🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Ciemna strona C++

#267683
From: Łukasz Krotowski
Date: Sat, 10 Nov 2007 23:53
48 lines
3812 bytes
Dnia 2007-11-10, Piotr Wyderski napisał:
> Łukasz Krotowski wrote:
>> Mówiąc zupełnie szczerze, ostatnimi czasy wąskim gardłem są dla mnie
>> dyski i baza.
>
> Na interfejsach do baz się zupełnie nie znam, ale w przypadku dysków
> polecam tryb asynchroniczny oparty na completion ports oraz wyłączenie
> cache'owania plików.

O nie, nie przerobię obecnego rozwiązania na IOCP jeśli _naprawdę_ nie
będę musiał. Zbyt duża komplikacja, konieczność utrzymywania rozłącznych
mechanizmów dla Win32 i Linuksa itp. Nie opłaca się. ;)

>> Nie. Załóżmy, że masz jakiś kawałek programu który działa na pewnej,
        ^^^^^^^^^^^
>> znanej ilości pamięci (stałej, bądź jako funkcja wejścia). Wtedy możesz,
>> z nonszalanckim ,,a co mi tam'', wszystkie kontenery z tego kawałka
>> programu przestawić na alokator który tylko alokuje. A po zakończeniu,
>> jednym pool.release() zwolnić całą pamięć.
>
> No ale ja nie wiem, ile pamięci mi będzie potrzeba. Wiem tylko,
> ile dla typowych danych powinno wystarczyć. Jeśli będzie więcej,
> to całość dalej ma działać poprawnie.

Czyli Twoja sytuacja nie spełnia wymaganych założeń (podkreślone).
Pisałem o sytuacji gdy wiesz ile pamięci potrzeba. Np. wiesz, że
przetwarzasz jednorazowo jeden obraz. Każdy z obrazów ma ściśle
określone wymiary.

>>>> 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ę.
>>
>> Ja też nie nadążam. Skąd Ci się tutaj wzięły rekordy aktywacji?
>
> No skoro zamierzasz przekazywać wskaźnik na local_pool
> między funkcjami, to musisz go uczynić ich parametrem, a co
> za tym idzie budować rekordy aktywacji go zawierające przy
> każdym wywołaniu.

Nie, wskaźnik (w rzeczywistości referencja) na local_pool jest ustawiona
raz, jako globalna zmienna w alokatorze. A alokator używany jest w wielu
funkcjach.

-- 
Łukasz Krotowski | lukasz.krotowski_AT_gmail.com
Technical Details
Message-ID: <fh5g9t$2t0$1@inews.gazeta.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.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> <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> <fh569d$mmn$1@news.dialog.net.pl> <fh5bjn$fk9$1@inews.gazeta.pl> <fh5d8h$qti$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 23:53:33 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 48
Message-ID: <fh5g9t$2t0$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> <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> <fh569d$mmn$1@news.dialog.net.pl> <fh5bjn$fk9$1@inews.gazeta.pl> <fh5d8h$qti$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 1194738813 2976 81.219.20.61 (10 Nov 2007 23:53:33 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Sat, 10 Nov 2007 23:53:33 +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