Même pour des images de quelques dizaines de megapixels, il faut 4Go de ram ?
Oui. Je l'utilise sur des images 16 Mpixels, et avec 4 Go sur une machine 32 bits, il n'avait pas assez d'espace d'adressage (ça marchait, mais plantage plus ou moins aléatoires à l'export). En passant en 64 bits, ça va mieux.
20 Mpixel * 3 cannaux * 4 octet (1 flottant simple précision) = 240 Mo par image.
Le moindre module va utiliser un buffer source et un buffer destination, donc 480 Mo juste pour stocker l'entrée et la sortie.
Au contraire, c'est codé en C avec un soucis permanent de perfs (il n'acceptera même pas de tourner sur un processeur qui n'a pas les instructions SSE qui vont bien). Je n'imagine même pas le désastre en Java avec 3 java.lang.Float par pixel ;-).
[^] # Re: Va falloir que je m'y mette
Posté par Matthieu Moy (site web personnel) . En réponse à la dépêche Darktable 1.6 : traitement de photos, développement d’images RAW. Évalué à 5.
Oui. Je l'utilise sur des images 16 Mpixels, et avec 4 Go sur une machine 32 bits, il n'avait pas assez d'espace d'adressage (ça marchait, mais plantage plus ou moins aléatoires à l'export). En passant en 64 bits, ça va mieux.
20 Mpixel * 3 cannaux * 4 octet (1 flottant simple précision) = 240 Mo par image.
Le moindre module va utiliser un buffer source et un buffer destination, donc 480 Mo juste pour stocker l'entrée et la sortie.
Plus de détails : http://www.darktable.org/2012/03/darktable-and-memory/
Au contraire, c'est codé en C avec un soucis permanent de perfs (il n'acceptera même pas de tourner sur un processeur qui n'a pas les instructions SSE qui vont bien). Je n'imagine même pas le désastre en Java avec 3 java.lang.Float par pixel ;-).