Una matriz serializada BinaryFormatter de 128³ dobles, ocupa 50 MB de espacio. La serialización de una matriz de 128³ struct s con dos campos double ocupa un máximo de 150 MB y más de 20 segundos en procesarse.Alternativas BinaryFormatter
¿Existen alternativas rápidas y sencillas que generen archivos compactos? Mi expectativa es que los ejemplos anteriores tomarían 16 y 32 MB, respectivamente, y menos de dos segundos para procesar. Eché un vistazo a protobuf-net, pero parece que ni siquiera es compatible con struct arrays.
PD: Me disculpo por haber cometido un error al registrar los tamaños de los archivos. La sobrecarga de espacio real con BinaryFormatter no es grande.
Manual de serialización de hecho puede ser muy rápido y compacto, pero también es propenso a errores y consume mucho tiempo para escribir. Espero algunos gastos generales, pero con BinaryFormatter a menudo no es razonable. –
Puede hacerlo un poco más amigable con genéricos y/o interfaces. Pero comience a agregar meta y se acercará rápidamente a la sobrecarga de los formateadores. –
Spot en Henk. BinaryFormatter funcionará con casi * cualquier cosa *. Debería esperar un mejor rendimiento de algo que hace exactamente lo que necesita y * solo * lo que necesita. –