Hello,

I tried this with Sid version, Brandens preview packages and Daniels
development tree. In all cases, I noticed a significantly high
(gigantic) CPU usage when applications tried to load the Unicode
equivalents of their fonts. For example, Icewm and XChat1.9 need 5..15
seconds (depending on the theme) to start. Once they started, they work
fine. And normaly, with an latin locale, they start about 10 times
faster. So could anyone enlighten me about what is going on?

Example from the strace log:


open("/usr/X11R6/lib/X11/locale/locale.dir", O_RDONLY) = 6
fstat64(6, {st_mode=S_IFREG|0644, st_size=28105, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x4000c000
read(6, "#\t$Xorg: locale.dir,v 1.3 2000/08/17 19:46:48 cpqbld Exp $\n#\n#\tThis file 
contains locale database file names\n#\tThe first"..., 4096) = 4096
read(6, 
"LC_LOCALE\t\t\tfr_CA.ISO8859-1\niso8859-15/XLC_LOCALE\t\t\tfr_CA.ISO8859-15\niso8859-1/XLC_LOCALE\t\t\tfr_CH.ISO8859-1\niso8859-15/X"...,
 4096) = 4096
read(6, 
"VISCII\niso8859-1/XLC_LOCALE\t\t\twa_BE.ISO8859-1\niso8859-15/XLC_LOCALE\t\t\twa_BE.ISO8859-15\nmicrosoft-cp1255/XLC_LOCALE\t\tyi_U"...,
 4096) = 4096
read(6, 
"TF-8/XLC_LOCALE\t\t\tlo_LA.UTF-8\nen_US.UTF-8/XLC_LOCALE\t\t\tlt_LT.UTF-8\nen_US.UTF-8/XLC_LOCALE\t\t\tlv_LV.UTF-8\nen_US.UTF-8/XLC_"...,
 4096) = 4096
read(6, 
"n_IE.ISO8859-15\niso8859-1/XLC_LOCALE:\t\t\ten_JM.ISO8859-1\niso8859-1/XLC_LOCALE:\t\t\ten_NZ.ISO8859-1\niso8859-1/XLC_LOCALE:\t\t\t"...,
 4096) = 4096
read(6, 
"SO8859-15\niso8859-1/XLC_LOCALE:\t\t\tnn_NO.ISO8859-1\niso8859-1/XLC_LOCALE:\t\t\tnn_NO.ISO8859-15\niso8859-1/XLC_LOCALE:\t\t\tny_NO"...,
 4096) = 4096
close(6)                                = 0
munmap(0x4000c000, 4096)                = 0
writev(3, [{"1\2\21\0\1\0<\0", 8}, 
{"-adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso10646-1", 60}], 2) = 68
read(3, "\1\361\r\t\20\0\0\0\1\0c\10\220md\10\0\20\0\0\0\0\0\0\220md\10<\0\0\0", 32) = 
32
readv(3, [{"<-adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso10646-1\0\0\0", 64}, 
{"", 0}], 2) = 64
writev(3, [{"1\2\21\0\1\0<\0", 8}, 
{"-adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso10646-1", 60}], 2) = 68
read(3, "\1\361\16\t\20\0\0\0\1\0c\10\220md\10\0\20\0\0\0\0\0\0\220md\10<\0\0\0", 32) 
= 32
readv(3, [{"<-adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso10646-1\0\0\0", 64}, 
{"", 0}], 2) = 64
writev(3, [{"2\2\21\0d\0<\0", 8}, 
{"-adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso10646-1", 60}], 2) = 68
read(3, 
"\1<\17\tL\0\0\0\376\377\1\0\0\0\376\377\370\377\0\0\251\1\0\0\1\0\r\0\r\0\17\0", 32) 
= 32
read(3, "\5\0\0\0007 Ad\0\0\377\0\0\0\33\0\0\0\"\0\v\0\3\0\1\0\0\0", 28) = 28
read(3, 
"\256\0\0\0I\1\0\0@\0\0\0J\1\0\0\257\0\0\0K\1\0\0\260\0\0\0\307\0\0\0\261\0\0\0\321\0\0\0\262\0\0\0\303\0\0\0\263\0\0\0\f\0\0\0;\0\0\0x\0\0\0\264\0\0\0K\0\0\0\265\0\0\0K\0\0\0\266\0\0\0L\1\0\0\267\0\0\0F\0\0\0\270\0\0\0\332\0\0\0\271"...,
 216) = 216

Etc... And:

# grep iso10646 log | wc -l
    1526

Too many lookups, IMHO. Same with latin1 locale:

grep 8859 log2 | wc -l
    114

Gruss/Regards,
Eduard.
-- 
>F�r einen neuen Monitor bitte hier ==>[X]<== einen Nagel einschlagen.
jetzt ist ein Nagel in der Wand, und er Beamer stahlt weiter..
(ja, richtig flache Witze...)


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to