Were RNNs all we needed? A GPU programming perspective