2020-04-17 using libmemdraw routines only /usr/bird/src/drawbench% prof 6.drawbench prof.RGB24 | sed 10q % Time Calls Name 45.9 0.902 346000 writebyte 29.7 0.584 346000 genconv 7.7 0.151 346023 memsetl 5.5 0.108 346000 readbyte 4.0 0.078 500 alphadraw 2.6 0.051 346723 memmove 1.1 0.022 346000 boolmemmove 0.8 0.015 1038000 clipy 0.6 0.011 346000 replread /usr/bird/src/drawbench% prof 6.drawbench prof.RGB24grad | sed 10q % Time Calls Name 50.4 2.959 346000 alphacalcS 28.5 1.674 692500 readbyte 15.5 0.912 346000 writebyte 2.5 0.149 346023 memsetl 1.4 0.085 500 alphadraw 0.3 0.015 346000 greymaskread 0.2 0.014 1038000 clipy 0.2 0.014 29 write 0.2 0.012 347516 memset /usr/bird/src/drawbench% prof 6.drawbench prof.RGBA32 | sed 10q % Time Calls Name 54.1 3.491 346000 alphacalc11 27.2 1.753 692000 readbyte 14.0 0.906 346000 writebyte 2.3 0.151 346023 memsetl 1.2 0.079 500 alphadraw 0.2 0.015 1038000 clipy 0.2 0.011 29 write 0.2 0.011 347516 memset 0.2 0.011 346000 replread /usr/bird/src/drawbench% prof 6.drawbench prof.all | sed 10q % Time Calls Name 23.2 3.526 1730500 readbyte 23.0 3.501 346000 alphacalc11 19.6 2.973 346000 alphacalcS 17.9 2.722 1038000 writebyte 8.8 1.341 3114023 memsetl 3.9 0.589 346000 genconv 1.5 0.225 1500 alphadraw 0.3 0.051 6003 memoptdraw 0.3 0.046 346723 memmove