Article View: pl.comp.lang.c
Article #267680Re: Ciemna strona C++
From: Piotr Wyderski
Date: Sat, 10 Nov 2007 21:03
Date: Sat, 10 Nov 2007 21:03
39 lines
3315 bytes
3315 bytes
Łukasz Krotowski wrote:
> Globalna. W przypadku wątków w TLS. Dla uproszczenia możemy założyć, że
> alokator wielowątkowy można zastąpić wieloma instancjami alokatora
> jednowątkowego w TLS.
Dobrze kombinujesz, tylko jest jeden problem: dostęp do zmienych
w TLS jest względnie powolny, jeśli opierasz się na API systemowym.
Wymyślenie naprawdę szybkich TLSów, działających bez wsparcia
API na głównej ścieżce zajęło mi sporo czasu i wynik jest dość
nietrywialny. Działa od kilku lat. Ale istotnie, bardzo szybkie TLSy
to kluczowy element współczesnego alokatora.
> Hmm, jak pewnie się domyśliłeś dealokacja w do_not_deallocate_allocator
> składa się z zera instrukcji.
To ja nie rozumiem, jak to ma działać. Dla każdego ciągu
wektorów osobna pula? Bez jaj. :-)
> albo przeciągnę sobie życie local_pool przez więcej
> niż jedno wywołanie funkcji to będę szybszy. (*)
Nie nadążam. Masz darmowe budowanie rekordów aktywacji?
Ech, kombinujecie, Panocku, jak koń pod górę.
> (*) Przekomarzanie się o kilka instrukcji.
No nie takie kilka, już się TLSy zaczęły pojawiac na horyzoncie. :-)
A poza tym akurat w moim zastosowaniu te kilka instrukcji było
istotne, formater znacznie przyspieszył po przejściu z mojego i tak
zoptymalizowanego alokatora w std::vector na kontener "stosowy";
o przypadku standardowego alokatora to szkoda gadać.
> Ech, słodkie, sobotnie dyskusje usnetowe. ;)
:-)
Pozdrawiam
Piotr Wyderski
Technical Details
Message-ID:
<fh569d$mmn$1@news.dialog.net.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mailReferences:
<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> <fh206f$2d6$1@news.supermedia.pl> <fh2ma2$rd0$1@news.vectranet.pl> <fh2po8$d0c$1@news.dialog.net.pl> <fh2vap$ggn$1@news.supermedia.pl> <fh4c1t$795$1@news.dialog.net.pl> <fh4cn0$etq$1@inews.gazeta.pl> <fh4ed5$8ih$1@news.dialog.net.pl> <fh4haa$2hm$1@inews.gazeta.pl> <fh4htk$agv$1@news.dialog.net.pl> <fh4n53$q3k$1@inews.gazeta.pl> <fh4qk4$fpq$1@news.dialog.net.pl> <fh4snb$hvb$1@inews.gazeta.pl> <fh51uj$k3t$1@news.dialog.net.pl> <fh53d6$edf$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail From: "Piotr Wyderski" <wyderski@mothers.against.spam-ii.uni.wroc.pl> Newsgroups: pl.comp.lang.c Subject: Re: Ciemna strona C++ Date: Sat, 10 Nov 2007 22:03:06 +0100 Organization: Dialog Net Lines: 40 Message-ID: <fh569d$mmn$1@news.dialog.net.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> <fh206f$2d6$1@news.supermedia.pl> <fh2ma2$rd0$1@news.vectranet.pl> <fh2po8$d0c$1@news.dialog.net.pl> <fh2vap$ggn$1@news.supermedia.pl> <fh4c1t$795$1@news.dialog.net.pl> <fh4cn0$etq$1@inews.gazeta.pl> <fh4ed5$8ih$1@news.dialog.net.pl> <fh4haa$2hm$1@inews.gazeta.pl> <fh4htk$agv$1@news.dialog.net.pl> <fh4n53$q3k$1@inews.gazeta.pl> <fh4qk4$fpq$1@news.dialog.net.pl> <fh4snb$hvb$1@inews.gazeta.pl> <fh51uj$k3t$1@news.dialog.net.pl> <fh53d6$edf$1@inews.gazeta.pl> NNTP-Posting-Host: xdsl-6381.walbrzych.dialog.net.pl Mime-Version: 1.0 X-Trace: news.dialog.net.pl 1194728558 23255 87.105.52.237 (10 Nov 2007 21:02:38 GMT) X-Complaints-To: abuse@dialog.net.pl NNTP-Posting-Date: Sat, 10 Nov 2007 21:02:38 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-Antivirus: avast! (VPS 071110-0, 2007-11-10), Outbound message X-Antivirus-Status: Clean Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit