PDA

View Full Version : Programmi ottimizzati per il dual core


rizzotti91
14-04-2007, 18:45
Sapete elencarmi dei programmi che sfruttano la potenza di tutti e due i core?

-Slash
14-04-2007, 20:06
basta che installi il kernel smp che di solito è nei repo di ogni distro

jimmazzo
14-04-2007, 20:27
Mmm così d'impulso mi viene in mente the-gimp, in slackware tempo fa avevo lo compilavo con l'opzione --enable-smp (avevo un dual-athlon 3 anni fa :cry:, e su linux funzionava da dio); sicuramente vista la popolarità dei proci con dual-core molte apps avranno introdotto il supporto a questà modalità, >probabilmente< però devi abilitarla in fase di compilazione (./configure --help).

Ps: dico probabilmente perchè non sò se abilitandola per default possa creare problemi a chi ha un processore normale.

Ciao.

rizzotti91
14-04-2007, 23:45
basta che installi il kernel smp che di solito è nei repo di ogni distro

A me avevano consigliato il kernel -ck... Cmq il kernel fa dividere il processo tra i due processori, ma devono essere i programmi a supportare il multithreading... Per linux ce ne sono?

Willy McBride
15-04-2007, 00:58
A me avevano consigliato il kernel -ck... Cmq il kernel fa dividere il processo tra i due processori, ma devono essere i programmi a supportare il multithreading... Per linux ce ne sono?

smp è un'opzione attivabile, non un patchset come il ck. Si parla di kernel smp nel senso di kernel precompilato dalla distro con il supporto smp abilitato (nei pc uniprocessore l'smp può peggiorare le prestazioni, per questo non è attivo di default in tutti i kernel).

Il multithreading è supportato da parecchio, le glibc con NPTL sono il default già da un po', presumo che dove avesse senso sia già tutto a posto. Non mi sono mai informato specificamente, però.

rizzotti91
16-04-2007, 15:04
smp è un'opzione attivabile, non un patchset come il ck. Si parla di kernel smp nel senso di kernel precompilato dalla distro con il supporto smp abilitato (nei pc uniprocessore l'smp può peggiorare le prestazioni, per questo non è attivo di default in tutti i kernel).

Il multithreading è supportato da parecchio, le glibc con NPTL sono il default già da un po', presumo che dove avesse senso sia già tutto a posto. Non mi sono mai informato specificamente, però.

Ho controllato con un comando che non ricordo il kernel, e mi dice che ha già il supporto per l'smp... Non riesco a far utilizzare a mencoder tutti e due i core, c'è una soluzione? Premetto che l'ho ricompilato con le giuste flags e ho provato a mettere nelle opzioni --enable-smp e non esiste... GRazie.

Willy McBride
16-04-2007, 15:40
Un rapida ricerca (5 minuti al massimo) su google sembra indicare che il multithreading funziona se il codec che stai usando lo supporta. Ci sono alcuni esempi in cui si suggerisce di inserire "threads=auto" (http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-x264.html#menc-feat-x264-encoding-options-speedvquality-threads) tra le opzioni quando si codifica in x264. Qualche altra pagina dice che xvid 1.2 supporta il multithreading (http://forum.doom9.org/showthread.php?t=107783), ma l'ultima stabile è la 1.1.2, quindi dovresti cercare meglio e scaricare uno snapshot della CVS, sperando che sia compatibile con mencoder.

rizzotti91
16-04-2007, 16:08
Un rapida ricerca (5 minuti al massimo) su google sembra indicare che il multithreading funziona se il codec che stai usando lo supporta. Ci sono alcuni esempi in cui si suggerisce di inserire "threads=auto" (http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-x264.html#menc-feat-x264-encoding-options-speedvquality-threads) tra le opzioni quando si codifica in x264. Qualche altra pagina dice che xvid 1.2 supporta il multithreading (http://forum.doom9.org/showthread.php?t=107783), ma l'ultima stabile è la 1.1.2, quindi dovresti cercare meglio e scaricare uno snapshot della CVS, sperando che sia compatibile con mencoder.

Grazie, ma io uso il codec mpeg 4, cosa devo fare o cercare? Grazie tante per l'interessamento.

k4ez4r
16-04-2007, 17:54
basta che installi il kernel smp che di solito è nei repo di ogni distrodai miei repo vedo che è stato sostituito da linux-image-generic

dennyv
17-04-2007, 12:22
Beh la base di tutto è un kernel SMP, poi devi avere i pacchetti che eseguono dei fork per sfruttare i dual-core. Ad esempio in Gentoo si attiva la USE flag "threads". Qualcuno citava Gimp: se andate nelle proprietà potete settare il numero di processori a disposizione; so che sono stati effettuati grossi passi avanti nella versione 2.3.

Ciao

rizzotti91
17-04-2007, 14:53
Grazie, la distro che uso è arch, e volevo principalmente, sfruttare il dual core per mencoder, ed ho scoperto che tutto dipende dai codec: l'xvid e l'x264 sfruttano il multithreading, ma io uso il codec mpeg4, si può fare qualcosa? Grazie.

Willy McBride
17-04-2007, 18:40
man mencoder:




lavc (-lavcopts)
Molte opzioni di libavcodec (lavc in breve) sono molto specialistiche e
documentate in modo molto rapido. Leggi i sorgenti per avere i det‐
tagli completi.

ESEMPIO:
vcodec=msmpeg4:vbitrate=1800:vhq:keyint=250

[...]

threads=<1-8>
Numero massimo di threads da usare (default: 1). Può avere un
leggero effetto negativo sulla stima del movimento.

[...]

rizzotti91
20-04-2007, 10:23
man mencoder:




lavc (-lavcopts)
Molte opzioni di libavcodec (lavc in breve) sono molto specialistiche e
documentate in modo molto rapido. Leggi i sorgenti per avere i det‐
tagli completi.

ESEMPIO:
vcodec=msmpeg4:vbitrate=1800:vhq:keyint=250

[...]

threads=<1-8>
Numero massimo di threads da usare (default: 1). Può avere un
leggero effetto negativo sulla stima del movimento.

[...]

Grazie.