Article View: pl.comp.lang.c
Article #267686Re: Ciemna strona C++
From: Łukasz Krotowski
Date: Sat, 10 Nov 2007 18:28
Date: Sat, 10 Nov 2007 18:28
32 lines
2883 bytes
2883 bytes
Dnia 2007-11-10, Piotr Wyderski napisał:
> Seweryn Habdank-Wojewódzki wrote:
>
>> Albo wręcz korzystać z wbudowanych funkcji alokujących na stosie, np. w
>> linuxie alloca.
>
> Panowie, ale PO CO? :-)))
Bo można. ;)
> Wbudowanie w wektor (czy string) niewielkiego bufora od ręki
> rozwiązuje _wszystkie_ problemy: mamy alokację i dealokację
> początkową o _zerowym_ koszcie (wielkość jest wyliczana w
> czasie kompilacji), rozwiązanie jest stuprocentowo wielowątkowe,
> lokalnośc ma znakomitą (dla małych danych jedna linia cache, a nie
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> dwie, jak w std::vector), nie wymaga osobnego wpisu w TLB
^^^^^^^^^^^^^^^^^^^^^^^
> (bo posługuje się stosowym) i do tego jest całkowicie przenośne.
> Jedyna wada to pewien niewielki narzut na zajętość pamięci, gdy
> ktoś dobierze złą pojemność bufora wewnętrznego -- w przypadku
> obiektów tymczasowych rzecz kompletnie bez znaczenia, bo
> granulacja alokacji pamięci dla stosu to co najmniej strona.
Podkreślone rzeczywiście jest fajne. Nie chcemy krytykować Twojej
optymalizacji dla małych tablic. Ale nie krytykuj naszych alokatorów
które też potrafią ładnie działać.
Pij i pozwól pić innym. Jak mawiają mądrzy ludzie. ;)
--
Łukasz Krotowski | lukasz.krotowski_AT_gmail.com
Technical Details
Message-ID:
<fh4t8a$k2b$1@inews.gazeta.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.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> <fh4q9e$rsq$4@news.vectranet.pl> <fh4rpl$gga$1@news.dialog.net.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: Łukasz Krotowski <notreal@notreal.pl> Newsgroups: pl.comp.lang.c Subject: Re: Ciemna strona C++ Date: Sat, 10 Nov 2007 18:28:26 +0000 (UTC) Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 32 Message-ID: <fh4t8a$k2b$1@inews.gazeta.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> <fh4q9e$rsq$4@news.vectranet.pl> <fh4rpl$gga$1@news.dialog.net.pl> NNTP-Posting-Host: static-81-219-20-61.devs.futuro.pl Mime-Version: 1.0 X-Trace: inews.gazeta.pl 1194719306 20555 81.219.20.61 (10 Nov 2007 18:28:26 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Sat, 10 Nov 2007 18:28:26 +0000 (UTC) X-User: bies_pospolity User-Agent: slrn/0.9.8.1pl1 (Linux) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit