View previous topic :: View next topic |
Author |
Message |
max_1975 Tux's lil' helper
Joined: 25 Oct 2002 Posts: 93
|
Posted: Thu May 01, 2003 8:48 am Post subject: chiedo aiuto |
|
|
Ciao a tutti! Ho bisogno di due consigli:
1) Come faccio per masterizzare un CD bootable con le immagini iso di Gentoo? ho poca dimistichezza con questo tipo di programmi...
2)Lavorando su macchine SMP, avrei la necessità di abilitare nel g++/gcc la possibilità di avere un codice parallelizzato (lavoro nell'ambito della ricerca scientifica)...quali opzioni devo indicare? (leggendo il man di gcc/g++ non ho trovato nulla al riguardo).
Grazie _________________ Max |
|
Back to top |
|
|
enx89 Apprentice
Joined: 21 Mar 2003 Posts: 192 Location: Milano
|
Posted: Thu May 01, 2003 8:55 am Post subject: |
|
|
1)non ho capito cosa intendi per: Quote: | masterizzare un CD bootable con le immagini iso di Gentoo? | ?
vuoi masterizzare le iso di gentoo?
2) c'è un opzione del gcc/g++ che specifica quante compilazioni parallele deve fare:
dove x di solito è il numero di processori +1.
Nel make.conf c'è un' opzione specifica:che però funziona solo quando usi portage.
Ciao ENx |
|
Back to top |
|
|
cerri Bodhisattva
Joined: 05 Mar 2003 Posts: 2957 Location: # init S
|
Posted: Thu May 01, 2003 9:07 am Post subject: |
|
|
1) Da windows puoi usare nero. Da Linux puoi usare un qualsiasi tool (cdrecord via shell).
2) Se non erro l'SMP va abilitato nel kernel, non e' necessario passare al compilatore nessuna opzione (ma non sono ferrato in materia). Per compilare piu' velocemente puoi usare MAKEOPTS in /etc/make.conf settabdolo a -j3 (# ossia il numero di CPU +1).
CHIUNQUE e' autorizzato a smentirmi _________________ Enjoy your freedom.
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you.
<----------------------->
Andrea Cerrito |
|
Back to top |
|
|
max_1975 Tux's lil' helper
Joined: 25 Oct 2002 Posts: 93
|
Posted: Thu May 01, 2003 9:15 am Post subject: |
|
|
Il problema che ho è che non riesco a fare il boot dal cd su cui ho copiato il file gentoo-basic-x86-1.4_rc4.iso ... mi chiedevo quindi se non avessi sbagliato a fornire qualche parametro al programma che ho utilizzato per masterizzare (Nero per winzozz)
Per quanto riguarda la compilazione con -jx volevo chiederti: questa opzione parallelizza solo il processo di compilazione oppure anche l'eseguibile?
grazie[/quote] _________________ Max |
|
Back to top |
|
|
enx89 Apprentice
Joined: 21 Mar 2003 Posts: 192 Location: Milano
|
Posted: Thu May 01, 2003 9:25 am Post subject: |
|
|
Quote: | Il problema che ho è che non riesco a fare il boot dal cd su cui ho copiato il file gentoo-basic-x86-1.4_rc4.iso ... mi chiedevo quindi se non avessi sbagliato a fornire qualche parametro al programma che ho utilizzato per masterizzare (Nero per winzozz) |
Beh in teoria non dovresti dargli nessun parametro, anche perchè non te ne chiede! Cmq se puoi usa linux per la masterizzazione delle iso (o cdrecord per win), anche se nero dovrebbe farcela tranquillamente!!
la sintassi di cdrecord è: Code: | cdrecord dev=x,y,z speed=t -v immagine.iso | dove x,y,z identifica il tuo masterizzatore ( lo trovi con "cdrecord -scanbus"), il -v ti serve per avere più dettagli in output, mentre invece la t è la velocità di masterizzazione.
Quote: | Per quanto riguarda la compilazione con -jx volevo chiederti: questa opzione parallelizza solo il processo di compilazione oppure anche l'eseguibile? |
-jx parallelizza solo la compilazione, per l'esecuzione ci dovrebbe pensare il kernel, a cui tu avrai abilitato il supporto per l'SMP. Inoltre dovresti usare i threads (ovvero programmazione concorrente) per avere l' esecuizione parallela di un unico programma, ma queste sono cose che forse già sai!!
ENx |
|
Back to top |
|
|
cerri Bodhisattva
Joined: 05 Mar 2003 Posts: 2957 Location: # init S
|
Posted: Thu May 01, 2003 9:29 am Post subject: |
|
|
max_1975 wrote: | Il problema che ho è che non riesco a fare il boot dal cd su cui ho copiato il file gentoo-basic-x86-1.4_rc4.iso |
Non devi fare un cd con quel file ma devi usare quel file come immagine.
max_1975 wrote: | ... mi chiedevo quindi se non avessi sbagliato a fornire qualche parametro al programma che ho utilizzato per masterizzare (Nero per winzozz) |
Si. Non ricordo qual'e' l'opzione giusta, ma ripeto quel file e' un'immagine che contiene un filesystem, quindi devi creare un cd DA quel file non CON quel file.
max_1975 wrote: | Per quanto riguarda la compilazione con -jx volevo chiederti: questa opzione parallelizza solo il processo di compilazione oppure anche l'eseguibile? |
Quell'opzione e' passata al make, non al gcc.
Dal man di make:
Code: | -j jobs
Specifies the number of jobs (commands) to run simultaneously. If
there is more than one -j option, the last one is effective. If
the -j option is given without an argument, make will not limit
the number of jobs that can run simultaneously. |
In sostanza, velocizza il make, non l'eseguibile. IMHO la funzione SMP e' kernel. _________________ Enjoy your freedom.
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you.
<----------------------->
Andrea Cerrito |
|
Back to top |
|
|
cerri Bodhisattva
Joined: 05 Mar 2003 Posts: 2957 Location: # init S
|
Posted: Thu May 01, 2003 9:32 am Post subject: |
|
|
enx89, manco ci mettessimo d'accordo _________________ Enjoy your freedom.
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you.
<----------------------->
Andrea Cerrito |
|
Back to top |
|
|
max_1975 Tux's lil' helper
Joined: 25 Oct 2002 Posts: 93
|
Posted: Thu May 01, 2003 9:38 am Post subject: |
|
|
Non posso utilizzare i threads (in sostanza il programma deve fare una sola cosa un sacco di volte...ovvero cicli for innestati su array multidimensionali)...mi ricordo che quando lavoravo su macchine Digital Alpha (con compilatore proprietario) bisognava specificare al compilatore esattamente il numero di processori su cui il programma avrebbe girato...
Vedrò di informarmi meglio...
Grazie comunque _________________ Max |
|
Back to top |
|
|
cerri Bodhisattva
Joined: 05 Mar 2003 Posts: 2957 Location: # init S
|
Posted: Thu May 01, 2003 9:57 am Post subject: |
|
|
PARLO PERCHE' CREDO CHE SIA COSì... FORSE
In linux un processo NON puo' girare su piu' processori contemporaneamente, pertanto il "trick" sta nello scrivere l'applicazione in modo da forkare piu' processi. Inoltre, il GCC non ha nessuna opzione per ottimizzare un'applicazione in base alle CPU, ma soltanto per l'architettura sulla quale dovra' girare.
Prova a dare un'occhiata a questo pdf. _________________ Enjoy your freedom.
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you.
<----------------------->
Andrea Cerrito |
|
Back to top |
|
|
max_1975 Tux's lil' helper
Joined: 25 Oct 2002 Posts: 93
|
Posted: Thu May 01, 2003 10:12 am Post subject: |
|
|
Credevo che anche il compilatore fosse capace di spezzare cicli for in più processi indipendenti da distribuire ai vari processori...credo che il compilatore Intel per Fortran 90/95 (ifc) si capace di farlo... _________________ Max |
|
Back to top |
|
|
enx89 Apprentice
Joined: 21 Mar 2003 Posts: 192 Location: Milano
|
Posted: Thu May 01, 2003 12:39 pm Post subject: |
|
|
cerri wrote: | In linux un processo NON puo' girare su piu' processori contemporaneamente, pertanto il "trick" sta nello scrivere l'applicazione in modo da forkare piu' processi |
Sono d' accordo!!!!!!! Normalmente un processo gira su un processore, ma se il processo usa i threads questi vengono fatti girare su più processori.
max_1975 wrote: | Non posso utilizzare i threads (in sostanza il programma deve fare una sola cosa un sacco di volte...ovvero cicli for innestati su array multidimensionali) |
non riesci proprio a trasformare la tua appilcazione per usare i threads, vero?
Purtroppo non so darti altri consigli
ENx |
|
Back to top |
|
|
|