Monday, October 3, 2011

Matrices serialization

I've just implemented support of serialization for la4j.matrix.Matrix interface.

Of course, I've used java.io.Externalizable interface for fast serialization and deserealization mechanism.

Just look at results:
  • java.io.Serializable
    • Matrix (2048x2048) serialization: 0,337 s
    • Matrix (2048x2048) deserialization: 0,476 s
  • java.io.Externalizable
    • Matrix (2048x2048) serialization: 0,254 s
    • Matrix (2048x2048) deserialization: 0,302 s
Externalizable works faster (30% in write and 60% in read) because:
  1. It uses just one reflection call (instead of many in Serializable version)
  2. It doesn't chose class loader via JVM call

No comments:

Post a Comment