Porca miseria Mario, 6-7 secondi sulla mia macchina per generare il file con il programma compilato.
Non mi aspettavo tanta differenza..
Ciao
PS Qualche anima gentile mi spiega come inviare i messaggi personali?
Moderatore: Staff

urka58 ha scritto:Porca miseria Mario, 6-7 secondi sulla mia macchina per generare il file con il programma compilato.
Non mi aspettavo tanta differenza..
seq -w 0 9999999
urka58 ha scritto:...
PS Qualche anima gentile mi spiega come inviare i messaggi personali?

Mario Vanoni ha scritto:Un vecchio UNIXiano rimasto ai tempi senza X e senza mouse.

spina ha scritto:Ancora più volece sarebbe se il programma di Mario aprisse un file e ci scrivesse direttamente dentro....penso

Mario Vanoni ha scritto:...time dice 0m4.349s...
Mario Vanoni ha scritto:spina ha scritto:Ancora più volece sarebbe se il programma di Mario aprisse un file e ci scrivesse direttamente dentro....penso
Non molto,
time z3 > /dev/null
0m3.884s
. Comunque volevo dire che sarebbe più veloce se modificassi il tuo programma affinchè fosse lui stesso a ridirigere l'output nel file non di mandare l'output su /dev/null, ma ora che ci penso bene forse non fa differenza 

spina ha scritto:Mario Vanoni ha scritto:...time dice 0m4.349s...Mario Vanoni ha scritto:spina ha scritto:Ancora più volece sarebbe se il programma di Mario aprisse un file e ci scrivesse direttamente dentro....penso
Non molto,
time z3 > /dev/null
0m3.884s
Bhé, immaginavo che migliorasse non che ci mettesse 0 secondi. Comunque volevo dire che sarebbe più veloce se modificassi il tuo programma affinchè fosse lui stesso a ridirigere l'output nel file non di mandare l'output su /dev/null, ma ora che ci penso bene forse non fa differenza
Spina
static char prog[] = "z4";
#define SCCSID "@(#)" __FILE__ " 09-Mar-2009/va compiled " __DATE__ " " __TIME__
char *sccsid(void) { return (SCCSID); }
#include <stdio.h>
#include <stdlib.h>
int
main (int argc, char **argv)
{
int i, j;
FILE *fp;
if (argc < 2)
exit(fprintf(stderr, "Usage: %s filename\n", prog));
if (! (fp = fopen(argv[1], "w")) )
exit(fprintf(stderr, "%s: can't open %s.\n", prog, argv[1]));
for (i = 0; i < 10000; i++)
for (j = 0; j < 1000; j++)
fprintf(fp, "testo-%04i-testo-%06i.txt\n", i, j);
fclose(fp);
return(0);
}

spina ha scritto:urka58 ha scritto:Porca miseria Mario, 6-7 secondi sulla mia macchina per generare il file con il programma compilato.
Non mi aspettavo tanta differenza..
Bhé urka58 se ci pensi un attimo lo script (quello postato da me):mentre il programma compilato si limita ad eseguire un ciclo di 10.000.000 di righe, un pò come eseguire:
- invoca una subshell
- invoca seq per creare una listato di 10.000.000 di righe
- poi analizza quel listato immenso (che è tutto in memoria) per stampare l'output
- Codice: Seleziona tutto
seq -w 0 9999999
Ancora più volece sarebbe se il programma di Mario aprisse un file e ci scrivesse direttamente dentro....penso
Spina
Offtopic:urka58 ha scritto:...
PS Qualche anima gentile mi spiega come inviare i messaggi personali?
Ma se l'altro giorno me ne hai mandato uno?
Comuque, vai su "Messaggi Personali", clicchi su "Nuovo PM". Il punto critico è che dopo aver aggiunto il nick di un utente devi premere "aggiungi" altrimenti è come se non l'avessi aggiunto. Puoi anche usare il link "Trova utente" per fare una ricerca.

Visitano il forum: Nessuno e 1 ospite