Zdrzanie v komunikacii / threadoch / synchronizacii?

Stanislav Meduna stanom na etm.at
Pondělí Prosinec 6 12:16:54 CET 1999


Pavel Kankovsky schrieb in Nachricht
<19991206110332.71C3.0 na argo.troja.mff.cuni.cz>...

>A kolik to dela, kdyz se to toci mezi thr 1 a 2 v ramci jednoho
>procesu? Jestli je bottleneck ten semafor, pak to bude taky pomale.

Este som neskusal - najprv som si chcel overit, ci nejde
o nejaky znamy problem. Bottleneck je mozny, ale preco
je docerta stroj pritom 80% idle?

>Je TCP i ten socket, kterym se signalizuje mezi temi dvema thready?
>Pokud ano, neni to blbost? Stacila by obycejna roura (ktera ma mensi
>rezii).


Ovsem nie pod Linuxom, kde je este stale ten bug, ze rura
neselectuje pre zapis, kym nie je uplne prazdna z dovodu,
ze je buffer presne tak velky, ako limit pre atomicky zapis.
Tym padom je prave pre aplikacie typu "mas nieco v buffri,
pozri sa tam" bez dalsich hackov dokonale nepouzitelna.
Raz, ked budem mat cas, to asi v jadre opravim, ale
momentalne ...

Problem je jednak ten, ze kod uz existuje a "don't touch running
system", jednak to ma bezat aj pod NT-ckami s minimalnymi
zmenami a tam to s pipami tiez nie je ruzove.

Zaujimave je tiez to, ze kym ciste TCP/IP ide v Linuxe dvakrat
rychlejsie ako v tych NT, tento semaforovy zazrak naopak
ide dvakrat pomalsie. A tie na promile sediace hodnoty
podla mna ukazuju na nejaky hlbsi problem...

Zdravi
--
                                                 Stano





Další informace o konferenci Linux