Re: Pomalý přístup u fork-procesu k paměti alokované přes shm

Jiri Kosina jikos na jikos.cz
Úterý Leden 3 16:55:22 CET 2017


On Sat, 17 Dec 2016, Pavel Kankovsky wrote:

> > Tak jsem to zkusil předělat na SHM - výsledek obdobný...
> 
> To není žádné překvapení, protože v obou případech dochází k tomu, že si
> potomek musí znovu naplnit stránkové tabulky.
>
> Neobjevil jsem žádný rozumný způsob, jak se tomu vyhnout.

Ten example už není dostupný, takže je otázka, co je žádoucí chování; 
zda-li aby paměť byla sdílená (a-la shm), nebo aby měli oba své vlastní 
kopie (mmap() + fork()).

V prvním případě clone(CLONE_VM).

Ve druhém případě se ten overhead, který je nutný pro vytvoření nových 
stránkovacích tabulek, někde prostě z principu naakumulovat musí (ať už 
teoreticky jednorázově při klonování procesu, nebo amortizovaně při CoW).

Ve druhém vyunitit použití větších stránek, což výrazně sníží overhead na 
CoW pagetables.

-- 
Jiri Kosina


Další informace o konferenci Linux