Faça o que fizer, calcular o próximo estado para um autômato celular exige o mesmo número de células do que as células do autômato. Assim, para obter um tempo constante, você precisa do núcleo de computação que houver células.
Atualmente, o número deles na GPU é no máximo alguns milhares, enquanto o cálculo do próximo estado é tão simples que eu espero que o resultado seja vinculado à IO, ou seja, você pode obter uma boa aproximação do tempo necessário apenas considerando o movimentação de dados necessária (e se não for uma boa aproximação, a implementação tem uma ineficiência ou a arquitetura não é adequada, mas isso seria muito surpreendente).
Para o FPGA, a questão é mais difícil e provavelmente dependerá da mistura de unidades de memória e computação disponíveis. Se não estiver muito longe, você não terá memória suficiente para manter todas as unidades ocupadas e, se confiar na memória externa, estará no mesmo lugar que a GPU, a largura de banda da memória será o fator limitante e eu não surpreenda-se se a conclusão for de que não há vantagem sobre a GPU. (Observe que, embora eu trabalhe com FPGA, isso foi há anos, agora pode haver modelos FPGA com a combinação certa).
ASIC oferece mais flexibilidade. Você pode facilmente ter uma implementação sistólica (mas, com o fluxo de dados bidirecional, alguns sistólicos geralmente são restritos ao fluxo de dados unidirecional), cada célula física é uma lógica: pouco de memória e a lógica necessária para calcular seu próximo estado e é apresentada de modo que é vizinho físico, é lógico. Você está obviamente no reino do tempo constante. Dependendo das macros rígidas que você possui, é melhor ser um pouco menos óbvio e ter células físicas que reagrupam várias lógicas. O objetivo é maximizar o que é feito em um chip, ou seja, minimizar a comunicação com a parte externa do chip, assim que suas necessidades de comunicação forem proporcionais ao número de células, a largura de banda será limitada. Sim, isso significa que, se você precisar examinar todas as células de cada etapa, você provavelmente não é muito melhor do que com a GPU. (O costume completo forneceria apenas uma melhor integração, ou seja, mais células por chip).
Resumo: - se você deseja examinar todos os estados intermediários, a GPU é a abordagem mais eficaz - caso contrário, você precisa do volume para justificar um ASIC para ter algo melhor, o FPGA provavelmente não oferecerá vantagem suficiente se eles tem algum.