Question

I ai un programme SDL très simple qui utilise seulement 1 Mo de mémoire à 32 bits par pixel, 2.4Mo avec 24 bits par pixel, 1.9Mo avec 16 bits par pixel, et 1,4Mo avec 8 bits par pixel. ce qui est avec cette utilisation de la mémoire étrange? pourquoi la plupart des bits par pixel prennent le moins de mémoire?

C ++ GCC

Merci

Était-ce utile?

La solution

Peut-être que les tampons de conversion interne. Si votre BPP de surface ne correspond pas à votre surface de matériel que vous pourriez avoir besoin pour le tampon complet en mémoire, alors que SDL peut être en mesure d'utiliser cette surface directement autrement. Ceci est juste une désinvolture conjecture.

Mais en regardant un processus en dirigeant ou d'une tâche ne peut pas être la meilleure façon d'obtenir une poignée sur ce qui en utilisant la mémoire. Si vous êtes sous Linux, vous pouvez essayer un outil tel que valgrind pour obtenir une très bonne idée de l'endroit où la mémoire va.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top