Prime Cores V1.0 Freeware
-
bonis62 ha scritto:
Scusa, quando ho postato avevo sonno, e sono stato molto telegrafico,ma non era per il.... carico.... il test, solo per vedere sè funzionava
su CPU diverse;
quasi sei milioni di numeri primi in 3 secondi e rotti.......
due milioni di numeri primi al secondo,
....non è male ...credo ...

a per macinare macina!!
:asd:
:n2mu: -
Pentium D805@3.6Ghz
Asus P5ND2 Sli
2GB SuperTalent PC2-6400 407Mhz@4-4-4-12
Windows XP SP3
Numeri Primi Scoperti : 5761455 In 8500 Millisecondi
Le085 ha scritto:
l'algoritmo macina di brutto, ma credo che inevitabilmente all'aumentare delle cifre l'elaborazione rallenta.immagino che trovare un numero primo da 100 cifre non sia la stessa cosa che trovare un numero primo da 10 cifre
sbaglio?:cheazz:
decisamente Leo, il tempo necessario aumenta geometricamente.
Ad esempio, arrivare a calcolare questo primo (2^1257787-1) porterebbe via un bel pò di tempo in più

Non lo inserisco direttamente perchè, per renderne bene la lunghezza, il file di testo col solo numero pesa qualcosa come ~500KB.
Per chi ha curiosità inserisco il link per scaricarlo e farsene un'idea più precisa

p.s.
per esattezza è rappresentato da 378632 cifre ed è stato scoperto nel 1996, quindi in assoluto non è attualmente tra i più impegnativi da scoprire.
-
Totocellux ha scritto:
Pentium D805@3.6GhzAsus P5ND2 Sli
2GB SuperTalent PC2-6400 407Mhz@4-4-4-12
Windows XP SP3
Numeri Primi Scoperti : 5761455 In 8500 Millisecondi
in teroia con la mia routine facendo salti in radice quadrata con long step di 1582028137369 dovrei arrivarci in poco tempo,
solo che il pc non la gestisce

decisamente Leo, il tempo necessario aumenta geometricamente.
Ad esempio, arrivare a calcolare questo primo (2^1257787-1) porterebbe via un bel pò di tempo in più

Non lo inserisco direttamente perchè, per renderne bene la lunghezza, il file di testo col solo numero pesa qualcosa come ~500KB.
Per chi ha curiosità inserisco il link per scaricarlo e farsene un'idea più precisa

p.s.
per esattezza è rappresentato da 378632 cifre ed è stato scoperto nel 1996, quindi in assoluto non è attualmente tra i più impegnativi da scoprire.
il giocattolo se lo metti a 4.1 ghz quanto ti fà ?

-
Totocellux ha scritto:
Pentium D805@3.6GhzAsus P5ND2 Sli
2GB SuperTalent PC2-6400 407Mhz@4-4-4-12
Windows XP SP3
Numeri Primi Scoperti : 5761455 In 8500 Millisecondi
ah
a titolo personale, cioe, curiosità mia, a parte l'interfaccia
grafica tirata su con blitzmax, il resto si vede con cosa
è scritto ? :cheazz:
-
I7 920@3,8GHz
Numeri Primi Scoperti : 5761455 In 3031 Millisecondi
bello rapido come test:)
-
bonis62 ha scritto:
il giocattolo se lo metti a 4.1 ghz quanto ti fà ?
sono ad aria, quindi al limite di stabilità a 3.6Ghz (.... è il mio pc d'ufficio)
bonis62 ha scritto:
aha titolo personale, cioe, curiosità mia, a parte l'interfaccia
grafica tirata su con blitzmax, il resto si vede con cosa
è scritto ? :cheazz:
Con un debugger non è così lampante stabilirlo, ci sarebbero da fare ulteriori approfondimenti.
Ma col solo debugger perdendoci un pò di tempo e seguendo delle tracce:

da questo sprintf (e altro) direi che è scritto in dialetto C++
-
Totocellux ha scritto:
sono ad aria, quindi al limite di stabilità a 3.6Ghz (.... è il mio pc d'ufficio)Con un debugger non è così lampante stabilirlo, ci sarebbero da fare ulteriori approfondimenti.
Ma col solo debugger perdendoci un pò di tempo e seguendo delle tracce:

da questo sprintf (e altro) direi che è scritto in dialetto C++
sei mitico
:clapclap: -
..... eh eh, tu packettizzi tutto

comunque per maggior precisione, considerato che nel jump è invocata la libreria msvcrt.dll (e di certo tu tieni il tuo pc aggiornato) direi che con ogni probabilità è Microsoft Visual C++

-
Totocellux ha scritto:
..... eh eh, tu packettizzi tutto
comunque per maggior precisione, considerato che nel jump è invocata la libreria msvcrt.dll (e di certo tu tieni il tuo pc aggiornato) direi che con ogni probabilità è Microsoft Visual C++

no, non ci crederai ma è lo scrausissimo MinGW

ehm ottimizzando ottimizzando .......
Numeri Primi Scoperti : 45599980 In 23571 Millisecondi
99999989 199999991
199999993 199999995 199999997 199999999
Numeri Primi Scoperti : 78001134 In 39580 Millisecondi
-
ok, tra una cosa e l'altra ho quasi terminato,
se mi date l'ok trasformo questa pre release in final,

aspetto i vostri commenti....
-
direi che è OK


l'unico appunto è che la prima esecuzione ha tirato fuori un tempo + alto di circa 4/10 sec.
Dalla seconda in poi, praticamente medesimo tempo

-
ok

anche a me nella seconda esecuzione da valori inferiori..ma ben diversi da quelli di toto!!

la funzione salva non è ancora implementata?
-

funziona, bel lavoro bonis62:clapclap:
-
Provato!

Ottimo lavoro. Funziona alla grande.

-
Bel programma!
funziona pero' se lo eseguo piu' volte c'è un'oscillazione del valore e questo scarto arriva anche a 2 secondi.
-
funziona anche troppo bene tanto che l'ultimo step per il maggior numero di numeri primi, imho, è anche troppo veloce... 35sec circa sul mio superpippa II!!
alla fine sei arrivato ad un algoritmo anche troppo efficiente
:asd:
-
apix_1024 ha scritto:
funziona anche troppo bene tanto che l'ultimo step per il maggior numero di numeri primi, imho, è anche troppo veloce... 35sec circa sul mio superpippa II!!alla fine sei arrivato ad un algoritmo anche troppo efficiente
:asd:
per ogni core parto da 0 e arrivo a trovare max 21336354 numeri primi
quindi il tuo computer non calcola 512072496 numeri primi reali ,
ma (0 -> 21336354) * (numero di core)
21336354 * 24 = 51207249
in queste ore ho messo a punto (e funziona) lo stesso algoritmo
ma con il THREAD_PRIORITY_HIGHEST settato su ON per migliorarne
l'efficenza, senza toccare la priorità dell'intero processo, ho implementato
anche un multithreading sui singoli processi restanti
per migliorare la latenza,
e ho scoperto che i benchmark multicore che danno sempre lo stesso tempo
su sistemi multicore o.... sono ottimizzati da piccoli omini verdi o.... secondo
me non sono reali.....

come Toto ti potra confermare , il 75 % del codice è in C ,
la routine che estrapola i numeri primi è in Assembler (INLINE nel codice C),
quindi Thread gestiti in C e calcoli in Assembler.
-
mi servirebbe una cortesia, il risultato esatto
del livello 1 con Primecores appena lanciato.
solo per chi ha un quad core o superiore.
grazie
-
bonis62 ha scritto:
mi servirebbe una cortesia, il risultato esattodel livello 1 con Primecores appena lanciato.
solo per chi ha un quad core o superiore.
grazie
Eccolo:


-
Ciao! Sembra che tu sia interessato a questa conversazione, ma non hai ancora un account.
Stanco di dover scorrere gli stessi post a ogni visita? Quando registri un account, tornerai sempre esattamente dove eri rimasto e potrai scegliere di essere avvisato delle nuove risposte (tramite email o notifica push). Potrai anche salvare segnalibri e votare i post per mostrare il tuo apprezzamento agli altri membri della comunità.
Con il tuo contributo, questo post potrebbe essere ancora migliore 💗
Registrati Accedi