From: Jeff R. <dv...@di...> - 2014-12-10 02:01:25
|
I just checked, and ns_base64encode is also faster than [binary encode base64] by about a factor of 2. -J Gustaf Neumann wrote: > Dear friends, > > Maybe, someone finds this information useful: > > just now, i did a quick comparison of the various > options for base64 codecs. It shows that NaviServer's > built-in ns_base64encode is very fast: > it is up to a factor of 1.000 faster than the Tcl-only > version of base64::encode, and even a factor of 10 > faster than base64::encode based on Trf (Trf 2.1.4). > While a big difference relative to the plain Tcl version > is expected, the improvement over the C-based Trf > is remarkable. > > The results are measured with the latest version of > NaviServer from bitbucket under Mac OS X 10.9.5 > > Using ns_base64encode reduces the external > dependencies and is by far the fastest version. > > all the best > -g > > > > size=100 > tcllib: 134.713824 microseconds > tcllib+trf: 4.561536 microseconds > ns: 0.541651 microseconds > > size=1000 > tcllib: 1281.819696 microseconds > tcllib+trf: 16.93683 microseconds > ns: 1.517516 microseconds > > size=10000 > tcllib: 12638.85578 microseconds > tcllib+trf: 143.11120 microseconds > ns: 11.08016 microseconds > > size=100000 > tcllib: 127344.794553 microseconds > tcllib+trf: 1423.021879 microseconds > ns: 113.504248 microseconds > > ------ > > foreach i {10 100 1000 10000} { > set s [string repeat 0123456789 $i] > lappend _ size=[string length $s] > lappend _ tcllib:[time {base64::encode $s} 1000] > lappend _ ns:[time {ns_base64encode $s} 1000] > } > join $_ \n > > > > ------------------------------------------------------------------------------ > Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server > from Actuate! Instantly Supercharge Your Business Reports and Dashboards > with Interactivity, Sharing, Native Excel Exports, App Integration & more > Get technology previously reserved for billion-dollar corporations, FREE > http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk > > > > _______________________________________________ > naviserver-devel mailing list > nav...@li... > https://lists.sourceforge.net/lists/listinfo/naviserver-devel > |