Rychlost paralelniho resolvovani (long)
Michal Krause
michal na krause.cz
Sobota Leden 13 02:54:00 CET 2001
On 13/01/2001, Pavel Kankovsky wrote:
> > #3 0x400437ba in __pthread_mutex_lock (mutex=0x4038fe04) at mutex.c:84
> > #4 0x40389d20 in __res_send (buf=0xbebfeb8c "3+\001", buflen=45,
> > ans=0xbebff3c4 "dóż°ä˙\027@Ěá\027@@ţżž$˙żž13\0031", anssiz=1024) at res_send.c:321
> > #5 0x4038944e in res_query (name=0xbebfefc0 "42.113.113.195.in-addr.arpa", class=1, type=12,
> > answer=0xbebff3c4 "dóż°ä˙\027@Ěá\027@@ţżž$˙żž13\0031", anslen=1024) at res_query.c:134
>
> Rekl bych, ze zpomaleni nebude takova zahada, kdyz resolver uvnitr
> provadi nejake hratky s mutexy -- zadna paralelizace se neprovadi a
> navic je to jeste pomalejsi o sychronizacni rezii. I kdyz je tedy
> ponekud divne, ze by ta rezie mutexu byla tak velika.
No, pokud by byl gethostbyaddr_r() vlastne jenom gethostbyaddr(), ale s
praci se siti obklicenou mutexem, pak by se to asi vysvetlovalo :)
Jinak jsem pred chvili otestoval adns a jeho rychlost je radove vetsi,
cemuz zrejme napomaha fakt, ze odpada rezie threadu a hlavne je mozne
provadet treba 2000 dotazu najednou (asynchronne pres select()y), coz u
threadu nebude to prave orechove.
> > (mimochodem, nevi nekdo, proc pri attachnuti threadu gdb nelze
> > prohlizet skoro zadne promenne? - viz argumenty funkci).
>
> Ja bych rekl, ze argumenty jsou dobre (viz name u res_query()). To, ze
> je ve vecech jako buf a ans(wer) binarni smeti, je celkem
> pochopitelne, kdyz se tam strkaji DNS zpravy.
Me slo spis o to, ze nekde bylo misto adresy/hodnoty "Cannot access
memory at address...", coz pak gdb hlasi i pri pokusu o zobrazeni
dalsich symbolu.
> P.S. Jinak bacha na strncpy(). Nezarucuje, ze kopie bude mit na konci
> '\0', coz muze byt neprijemne, pokud ji pak pouzivame jako string.
Jasne, normalne si tohle hlidam, slo spis o ojedinely kiks (podporeny
faktem, ze tohle nebyl ostry program - nejak jsem na tyhle veci pri
ruznych pokusech laxnejsi :( )
S pozdravem
--
Michal Krause /\
ICQ: 7665279 Informace (nejenom) ze sveta Linuxu /\/ \
email: michal na krause.cz _______ http://www.root.cz/ _______ NAVRCHOLU.cz
Vseci by chceli byt van Goghmi, ale odrezat si ucho ani jeden.
J. Raz ve filmu Rabaka
Další informace o konferenci Linux