[racket-dev] Performance: bytes->string/locale

From: Roman Klochkov (kalimehtar at mail.ru)
Date: Sat Aug 2 14:33:07 EDT 2014

 Tested on new racket 6.1
----
$ /usr/racket/bin/racket
Welcome to Racket v6.1.
> (enter! "test.rkt")
cpu time: 3472 real time: 3479 gc time: 44
cpu time: 608 real time: 604 gc time: 8
----
Even worse :-(


Sat, 02 Aug 2014 22:22:22 +0400 от Roman Klochkov <kalimehtar at mail.ru>:
>Tested on Racket 6.0.1
>
>----
>(define str (string->bytes/locale "abcdefghабвгде"))
>(time
>   (for ([i 1000000])
>      (bytes->string/locale str)))
>(time
>   (for ([i 1000000])
>      (bytes->string/utf-8 str)))
>---- Windows 7 x32:
>> (enter! "test.rkt")
>cpu time: 859 real time: 908 gc time: 78
>cpu time: 641 real time: 667 gc time: 16 Seems OK
>Linux
>$ uname -a
>Linux veles 3.14-1-686-pae #1 SMP Debian 3.14.12-1 (2014-07-11) i686 GNU/Linux
>$ /usr/racket/bin/racket
>Welcome to Racket v6.0.1.
>> (enter! "test.rkt")
>cpu time: 3072 real time: 3075 gc time: 52
>cpu time: 552 real time: 551 gc time: 8 Locale in both cases utf-8, so bytes->string/utf-8 and bytes->string/locale returns the same, but bytes->string/locale in Linux 6 times slower.
>Is it fixable?
>
>-- 
>Roman Klochkov
>_________________________
>  Racket Developers list:
>   http://lists.racket-lang.org/dev
>


-- 
Roman Klochkov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/dev/archive/attachments/20140802/f8adaed3/attachment.html>

Posted on the dev mailing list.