Eficiente aplicar ou mapear para vários argumentos da matriz por linha

Tenho duas matrizes às quais quero aplicar uma função, por linhas:

matrixA
           GSM83009  GSM83037  GSM83002  GSM83029  GSM83041
100001_at  5.873321  5.416164  3.512227  6.064150  3.713696
100005_at  5.807870  6.810829  6.105804  6.644000  6.142413
100006_at  2.757023  4.144046  1.622930  1.831877  3.694880

matrixB
          GSM82939 GSM82940 GSM82974 GSM82975
100001_at 3.673556 2.372952 3.228049 3.555816
100005_at 6.916954 6.909533 6.928252 7.003377
100006_at 4.277985 4.856986 3.670161 4.075533

Encontrei várias perguntas semelhantes, mas não muitas respostas:mapply para matrizes, Multi matriz de linhas mapply?. O código que eu tenho agora divide as matrizes por linha em listas, mas ter que dividi-lo o torna lento e não muito mais rápido que um loop for, considerando que eu tenho quase 9000 linhas em cada matriz:

scores <- mapply(t.test.stat, split(matrixA, row(matrixA)), split(matrixB, row(matrixB)))

A função em si é muito simples, basta encontrar o valor t:

t.test.stat <- function(x, y)
{
    return( (mean(x) - mean(y)) / sqrt(var(x)/length(x) + var(y)/length(y)) )
}

questionAnswers(2)

yourAnswerToTheQuestion