Cargando la matriz dispersa de Matlab guardada con -v7.3 (HDF5) en Python y operando en ella

Soy nuevo en Python, viniendo de Matlab. Tengo una gran matriz dispersa guardada en formato matlab v7.3 (HDF5). Hasta ahora he encontrado dos formas de cargar el archivo, usandoh5py ytables. Sin embargo, operar en la matriz parece ser extremadamente lento después de cualquiera. Por ejemplo, en matlab:

>> whos     
  Name           Size                   Bytes  Class     Attributes

  M      11337x133338            77124408  double    sparse    

>> tic, sum(M(:)); toc
Elapsed time is 0.086233 seconds.

Utilizando tablas:

t = time.time()
sum(f.root.M.data)
elapsed = time.time() - t
print elapsed
35.929461956

Utilizando h5py:

t = time.time()
sum(f["M"]["data"])
elapsed = time.time() - t
print elapsed

(Dejé de esperar ...)

[EDITAR

Basado en los comentarios de @bpgergo, debo agregar que he intentado convertir el resultado cargado porh5py (f) en unnumpy matriz o unascipy matriz dispersa de las siguientes dos formas:

from scipy import sparse
A = sparse.csc_matrix((f["M"]["data"], f["M"]["ir"], f["tfidf"]["jc"]))

data = numpy.asarray(f["M"]["data"])
ir = numpy.asarray(f["M"]["ir"])
jc = numpy.asarray(f["M"]["jc"])    
    A = sparse.coo_matrix(data, (ir, jc))

pero ambas operaciones son extremadamente lentas también.

¿Hay algo que me falta aquí?

Respuestas a la pregunta(6)

Su respuesta a la pregunta