🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #267739

Re: Ciemna strona C++

#267739
From: Sebastian Kaliszewski
Date: Thu, 15 Nov 2007 18:18
38 lines
3940 bytes
H5N1 wrote:
>> Sporo do myślenia dała mi kiedyś wypowiedź gościa z jakiegoś 
>> brytyjskiego centrum superkompuetrowego, który stwoerdził, że przez 10 
>> lat pracy nie widział ani jednego programu wielowątkowego. Równoległe 
>> rozwiązania wieloprocesowe, gdzie komunikacja między kontekstami 
>> przetwarzania jest ściśle wydzielona i gdzie jest zarządzanie całością 
>> jest sensownie realizowalne, są po prostu szybsze (i to o 
>> kilkadziesiąt procent).
> 
> Super, jeśli możesz zdefinować i odpalić statyczną pulę procesów, 
> najlepiej każdy na osobnym procesorze. Ale jeśli musisz je opalać np. na 
> żądanie klientów to okazuje się, że koszt utworzenia nowego procesu jest 
> masakryczny. A jak liczba równoległych zadań idzie w setki, albo tysiące 
> to z kosztami przełączania kontekstu też trzeba się liczyć.

Nie odróżniasz współbieżności od równoległości. Takie rzeczy to się robi gdy 
masz współbieżność (concurrency) bez równoległości (paralellism). Trzymanie 
kontekstu klienta w wątku? Proszę bardzo -- tylko po co do tego 
równoległość. Taki wątek albo śpi czekając na klienta lub na dysk/sieć, albo 
(bardzo krótko) wykonuje zlecenie klienta i po co ma się plątać z innymi? W 
dobrze zaprojektowanym systemie wątków to działa i to ładnie -- można na 
zupełnie zwykłej maszynie mieć np. 100000 wątków bez żadnej zadyszki i bez 
100GB RAM -- bo każdy wątek to tylko tyle ile potrzeba dla zapamiętania jego 
stanu. Tak działa np. Erlang -- język w którym oprogramowano trochę central 
Ericsona -- central obsługujących duuużo połączeń.

BTW. koszt odpalania procesu jest "maskaryczny" tylko na pewnym popularnym 
systemie operacyjnym zaprojektowanym akurat w trakcie rozkwitu mody na wątki 
jako panaceum na wszystko. Ale i tak takich procesów w systemie 
zaprojektowanym dla jakiejkolwiek wydajności nie tworzy się dla każdego 
zlecenia tylko procesy w których obsługa sesji klienta się zakończyła mogą 
być użyte ponownie (wracają do puli procesów wolnych). Ponadto procesy 
tworzy się "na zapas" (przyzwoite systemy mają konfigurowalną taką wartość 
jak liczba wolnych procesów). Tak działa wiel, nawet bardzo dużych systemów. 
I to działa wydajnie.

pzdr
\SK
Technical Details
Message-ID: <fhi1ju$lmi$1@bozon2.softax.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!opal.futuro.pl!news.internetia.pl!newsfeed.tpinternet.pl!nemesis.news.tpi.pl!atlantis.news.tpi.pl!news.tpi.pl!bozon.softax.com.pl!not-for-mail
References: <fghgeo$spf$1@nemesis.news.tpi.pl> <fghsb4$kpq$1@news.dialog.net.pl> <fgo4c7$mtu$1@news.vectranet.pl> <20071106073039.433f4934@Vorago> <fgqn9m$74j$2@news.vectranet.pl> <618565031.20071107113041@pkierski.net> <fgt6sh$jov$1@news.vectranet.pl> <fgtb6j$nur$1@news.vectranet.pl> <fgv6ba$k14$1@bozon2.softax.pl> <fgvkne$u3b$1@news.vectranet.pl> <fh1tjd$dtt$1@bozon2.softax.pl> <fh2lj6$qkh$1@news.vectranet.pl> <fha3as$pap$1@bozon2.softax.pl> <fhag70$6kk$1@atlantis.news.tpi.pl> <fhag1b$9or$3@news.vectranet.pl> <1194912011.15035.13.camel@qrnik> <1194962417.690643.172410@v3g2000hsg.googlegroups.com> <1195078411.24656.6.camel@qrnik> <fhhlii$cg1$1@bozon2.softax.pl> <fhhrds$lld$1@inews.gazeta.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!opal.futuro.pl!news.internetia.pl!newsfeed.tpinternet.pl!nemesis.news.tpi.pl!atlantis.news.tpi.pl!news.tpi.pl!bozon.softax.com.pl!not-for-mail
From: Sebastian Kaliszewski <s@get.it.off.to.reply.informa.pl>
Newsgroups: pl.comp.lang.c
Subject: Re: Ciemna strona C++
Date: Thu, 15 Nov 2007 19:18:05 +0100
Organization: Softax news server
Lines: 38
Message-ID: <fhi1ju$lmi$1@bozon2.softax.pl>
References: <fghgeo$spf$1@nemesis.news.tpi.pl>  <fghsb4$kpq$1@news.dialog.net.pl> <fgo4c7$mtu$1@news.vectranet.pl>  <20071106073039.433f4934@Vorago> <fgqn9m$74j$2@news.vectranet.pl>  <618565031.20071107113041@pkierski.net> <fgt6sh$jov$1@news.vectranet.pl>  <fgtb6j$nur$1@news.vectranet.pl> <fgv6ba$k14$1@bozon2.softax.pl>  <fgvkne$u3b$1@news.vectranet.pl> <fh1tjd$dtt$1@bozon2.softax.pl>  <fh2lj6$qkh$1@news.vectranet.pl> <fha3as$pap$1@bozon2.softax.pl>  <fhag70$6kk$1@atlantis.news.tpi.pl> <fhag1b$9or$3@news.vectranet.pl>  <1194912011.15035.13.camel@qrnik>  <1194962417.690643.172410@v3g2000hsg.googlegroups.com> <1195078411.24656.6.camel@qrnik> <fhhlii$cg1$1@bozon2.softax.pl> <fhhrds$lld$1@inews.gazeta.pl>
NNTP-Posting-Host: 83.18.189.42
Mime-Version: 1.0
X-Trace: atlantis.news.tpi.pl 1195150388 28987 83.18.189.42 (15 Nov 2007 18:13:08 GMT)
X-Complaints-To: usenet@tpi.pl
NNTP-Posting-Date: Thu, 15 Nov 2007 18:13:08 +0000 (UTC)
User-Agent: Mozilla Thunderbird 1.0.2 (X11/20050322)
X-Accept-Language: en-us, en
In-Reply-To: <fhhrds$lld$1@inews.gazeta.pl>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit