Portál AbcLinuxu, 12. května 2025 11:57

Dotaz: Lze omezit aplikaci tak aby využivala jen jedno jádro?

18.8.2007 12:46 Thunder.m | skóre: 35 | blog: e17
Lze omezit aplikaci tak aby využivala jen jedno jádro?
Přečteno: 778×
Odpovědět | Admin
Mohu omezit v Linuxu aplikaci tak aby na víceprocesorovém systému využívala a viděla pouze jedno jádro?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

18.8.2007 12:53 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Lze omezit aplikaci tak aby využivala jen jedno jádro?
Odpovědět | | Sbalit | Link | Blokovat | Admin
sched_setaffinity(3)
18.8.2007 16:48 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: Lze omezit aplikaci tak aby využivala jen jedno jádro?
Díky, ale nemyslel jsem při tvorbě programu, ale pro binární programy, stále nemůžu nic najít :(
18.8.2007 16:55 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Lze omezit aplikaci tak aby využivala jen jedno jádro?
Funkce sched_setaffinity() dostává jako první parametr PID procesu, kterému chcete masku nastavit, takže ji můžete nastavit i "zvenku". Také byste si mohl napsat jednoduchý wrapper, který před exec*() nastaví tu masku, a doufat, že si ji ta aplikace nepřenastaví zpátky. Aspoň předpokládám, že při spuštění programu zůstane maska zachována.
18.8.2007 22:20 a7dfa
Rozbalit Rozbalit vše Re: Lze omezit aplikaci tak aby využivala jen jedno jádro?
A ten wrapper se jmenuje taskset. ;-)
19.8.2007 02:07 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: Lze omezit aplikaci tak aby využivala jen jedno jádro?
Díky, zkusil jsem "taskset -c 0 program", ale nechodí to tak jak jsem si představoval, jedná se o problém ve wine http://bugs.winehq.org/show_bug.cgi?id=6183 který se projeví jen na dual-core systémech :(
11.5.2008 09:15 JF | skóre: 23
Rozbalit Rozbalit vše Re: Lze omezit aplikaci tak aby využivala jen jedno jádro?

Ono si wine interne pousti dalsi proocesy a ne ty se mozna tvoje nastaveni nevztahuje.

Co takhle zkompilovat kernel bez podpory SMP? A muzes mit jako option v boot manageru dual core/single core kernel.

11.5.2008 12:07 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Lze omezit aplikaci tak aby využivala jen jedno jádro?
CPU affinity mask se zachovává jak při fork(), tak při execve().

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.