Re: [naviserver-devel] Quest for malloc

2007-01-16 Thread Gustaf Neumann
This is most probably the best variabt so far, and not complicated, such a optimizer can do the right thing easily. sorry for the many versions.. -gustaf { unsigned register int s = (size-1) 3; while (s1) { s = 1; bucket++; } } if (bucket NBUCKETS) { bucket = NBUCKETS;

Re: [naviserver-devel] Quest for malloc

2007-01-16 Thread Zoran Vasiljevic
Am 16.01.2007 um 10:37 schrieb Stephen Deasey: Can you import this into CVS? Top level. You mean the tclThreadAlloc.c file on top-level of the naviserver project?

Re: [naviserver-devel] Quest for malloc

2007-01-16 Thread Zoran Vasiljevic
Am 16.01.2007 um 12:18 schrieb Stephen Deasey: vtmalloc -- add this It's there. Everybody can now contribute, if needed.

Re: [naviserver-devel] Quest for malloc

2007-01-16 Thread Stephen Deasey
On 1/16/07, Stephen Deasey [EMAIL PROTECTED] wrote: On 1/16/07, Zoran Vasiljevic [EMAIL PROTECTED] wrote: Am 16.01.2007 um 12:18 schrieb Stephen Deasey: vtmalloc -- add this It's there. Everybody can now contribute, if needed. Rocking. I suggest putting the 0.0.3 tarball up on

Re: [naviserver-devel] Quest for malloc

2007-01-16 Thread Zoran Vasiljevic
Am 16.01.2007 um 15:41 schrieb Stephen Deasey: I suggest putting the 0.0.3 tarball up on sourceforge, announcing on Freshmeat, and cross-posting on the aolserver list. You really want random people with their random workloads on random OS to beat on this. I don't know if the pool of people

Re: [naviserver-devel] Quest for malloc

2007-01-16 Thread Vlad Seryakov
Yes, it is combined version, but Tcl version is slightly different and Zoran took it over to maintain, in my tarball i include both, we do experiments in different directions and then combine best results. Also the intention was to try to include it in Tcl itself. Stephen Deasey wrote: On

Re: [naviserver-devel] Quest for malloc

2007-01-16 Thread Jeff Rogers
Gustaf Neumann wrote: This is most probably the best variabt so far, and not complicated, such a optimizer can do the right thing easily. sorry for the many versions.. -gustaf { unsigned register int s = (size-1) 3; while (s1) { s = 1; bucket++; } } if (bucket

Re: [naviserver-devel] Quest for malloc

2007-01-16 Thread Gustaf Neumann
Hi Jeff, we are aware that the funciton is essentially an integer log2. The chosen C-based variant is acually faster and more general than what you have included (it needs only max 2 shift operations for the relevant range) but the assembler based variant is hard to beat and yields another 3%