J'utilise numpy et Python 2.7 pour calculer des tableaux booléens de grande taille (plus de 100 millions d'éléments) pour un tamis de prime super-massif et les écrire dans des fichiers binaires pour les lire plus tard. Les bools NumPy sont sur 8 bits, donc la taille du fichier que j'écris est beaucoup plus grande que nécessaire. Comme j'écris un grand nombre de ces fichiers, j'aimerais les garder aussi petits que possible sans avoir à perdre beaucoup de temps et de mémoire à les convertir en bitarray et vice-versa.
J'allais initialement passer à l'utilisation du module bitarray pour réduire la taille des fichiers, mais le temps de calcul du tamis a augmenté d'environ 400% avec les mêmes algorithmes, ce qui est un peu inacceptable. Existe-t-il un moyen rapide d'écrire et de relire le ndarray dans un fichier plus petit, ou est-ce un compromis avec lequel je vais devoir composer ?