Wie kann ich mein Perl-Skript nutzen mehrere Kerne für die Kind-Prozesse?

Ich arbeite auf einem mathematischen Modell, das die Daten generiert, die von XFOIL, ein beliebter Luft-und Raumfahrt-tool verwendet, um die Auftriebs-und widerstandsbeiwert auf Tragflächen.

Habe ich ein Perl-Skript, das Aufrufe XFOIL wiederholt mit unterschiedlichen Eingabe-Parameter, um die Daten zu erzeugen, die ich brauche. Ich brauche XFOIL zu laufen 5,600 Zeiten, in rund 100 Sekunden pro run, soabout 6.5 Tage.

Ich habe einen quad-core-Maschine, aber meine Erfahrung als Programmierer begrenzt ist, und ich eigentlich nur wissen, wie die grundlegenden Perl.

Möchte ich ausführen von vier Instanzen von XFOIL zu einer Zeit, die alle auf Ihre eigenen Kern. So etwas wie dieses:

while ( 1 ) {

    for ( i = 1..4 ) {

        if ( ! exists XFOIL_instance(i) ) {

            start_new_XFOIL_instance(i, input_parameter_list);
        }
    }
} 

Also das Programm ist die überprüfung (oder besser schlafen), bis Sie einen XFOIL Instanz frei, wenn wir eine neue Instanz starten mit den neuen input-parameter-Liste.

InformationsquelleAutor der Frage Dang Khoa | 2009-12-25

Schreibe einen Kommentar