Salta al contenuto
  • Categorie
  • Recenti
  • Tag
  • Popolare
  • Utenti
  • Gruppi
Collassa
Logo del marchio
  1. Home
  2. Hardware
  3. CPU & Overclock
  4. Prime Cores V1.0 Freeware

Prime Cores V1.0 Freeware

Pianificato Fissato Bloccato Spostato CPU & Overclock
438 Post 0 Autori 40.9k Visualizzazioni
  • Da Vecchi a Nuovi
  • Da Nuovi a Vecchi
  • Più Voti
Rispondi
  • Risposta alla discussione
Effettua l'accesso per rispondere
Questa discussione è stata eliminata. Solo gli utenti con diritti di gestione possono vederla.
  • G Non in linea
    G Non in linea
    gear667
    scritto su ultima modifica di
    #270

    i39085_primecores.jpg

    funziona, bel lavoro bonis62:clapclap:

    1 Risposta Ultima Risposta
    0
    • D Non in linea
      D Non in linea
      dj883u2
      scritto su ultima modifica di
      #271

      Provato!:)

      Ottimo lavoro. Funziona alla grande.O0

      1 Risposta Ultima Risposta
      0
      • O Non in linea
        O Non in linea
        One1ros
        scritto su ultima modifica di
        #272

        Bel programma!

        funziona pero' se lo eseguo piu' volte c'è un'oscillazione del valore e questo scarto arriva anche a 2 secondi.

        1 Risposta Ultima Risposta
        0
        • A Non in linea
          A Non in linea
          apix_1024
          scritto su ultima modifica di
          #273

          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::asd::asd:

          1 Risposta Ultima Risposta
          0
          • X Non in linea
            X Non in linea
            Xstreme
            scritto su ultima modifica di
            #274

            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::asd::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.....:fiufiu:

            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.

            1 Risposta Ultima Risposta
            0
            • X Non in linea
              X Non in linea
              Xstreme
              scritto su ultima modifica di
              #275

              mi servirebbe una cortesia, il risultato esatto

              del livello 1 con Primecores appena lanciato.

              solo per chi ha un quad core o superiore.

              grazie

              1 Risposta Ultima Risposta
              0
              • D Non in linea
                D Non in linea
                dj883u2
                scritto su ultima modifica di
                #276

                bonis62 ha scritto:

                mi servirebbe una cortesia, il risultato esatto

                del livello 1 con Primecores appena lanciato.

                solo per chi ha un quad core o superiore.

                grazie

                Eccolo:

                i39271_1.jpg

                O0

                1 Risposta Ultima Risposta
                0
                • G Non in linea
                  G Non in linea
                  gear667
                  scritto su ultima modifica di
                  #277
                  i39273_primecore.jpg
                  1 Risposta Ultima Risposta
                  0
                  • A Non in linea
                    A Non in linea
                    apix_1024
                    scritto su ultima modifica di
                    #278
                    i39278_immagine.jpg
                    1 Risposta Ultima Risposta
                    0
                    • T Non in linea
                      T Non in linea
                      Totocellux
                      scritto su ultima modifica di
                      #279

                      anche se l'E5200 non è un quad, posto ugualmente lo score del livello 01 (potrebbe esserti utile ugualmente):

                      i39285_primecores-v2.010-livello1.jpg

                      livello 02:

                      i39286_primecores-v2.010-livello2.jpg

                      1 Risposta Ultima Risposta
                      0
                      • P Non in linea
                        P Non in linea
                        principino1984
                        scritto su ultima modifica di
                        #280

                        non capisco una cosa.. per quale motivo se do un livello più alto di toh... 5 o 6 dove c'è da calcolare un bel po' di numeri.. primecore mi stressa la CPU al 100% su tutti gli 8 cores per circa 5 secondi e poi va in vacanza.

                        Comunque ecco i due risultati:

                        t39297_primecore1.jpg t39298_primecore2.jpg

                        Marco

                        1 Risposta Ultima Risposta
                        0
                        • X Non in linea
                          X Non in linea
                          Xstreme
                          scritto su ultima modifica di
                          #281

                          principino1984 ha scritto:

                          non capisco una cosa.. per quale motivo se do un livello più alto di toh... 5 o 6 dove c'è da calcolare un bel po' di numeri.. primecore mi stressa la CPU al 100% su tutti gli 8 cores per circa 5 secondi e poi va in vacanza.

                          Comunque ecco i due risultati:

                          t39297_primecore1.jpg t39298_primecore2.jpg

                          Marco

                          se provi i livelli 1 2 4 8 e 24... dovrebbe funzionare tutto,

                          gli altri livelli li sto ancora ottimizzando....O0

                          1 Risposta Ultima Risposta
                          0
                          • X Non in linea
                            X Non in linea
                            Xstreme
                            scritto su ultima modifica di
                            #282

                            Ciao,

                            ecco una nuova versione in cui dovrei aver stabilizzato i tempi dei test

                            con un controllo più accurato dei vari thread,

                            i livelli attivi sono da 01 a 10 e il 24 per ora.

                            :leggi:http://www.xstreme.it/NewPrimeCores.zip :leggi:

                            .

                            1 Risposta Ultima Risposta
                            0
                            • T Non in linea
                              T Non in linea
                              Totocellux
                              scritto su ultima modifica di
                              #283

                              stai facendo davvero un lavoro superlativo :)

                              Complimenti, soprattutto per la velocità dell'algoritmo :clapclap:

                              1 Risposta Ultima Risposta
                              0
                              • X Non in linea
                                X Non in linea
                                Xstreme
                                scritto su ultima modifica di
                                #284

                                Totocellux ha scritto:

                                stai facendo davvero un lavoro superlativo :)

                                Complimenti, soprattutto per la velocità dell'algoritmo :clapclap:

                                grazie

                                anche se devo dire che il codice che gestisce

                                fino a 24 cores non è da meno dell'algoritmo :),

                                il "wait" del multithread ho dovuto riscriverlo a modo mio,

                                altrimenti il ciclo, in attesa che uno dei threads terminava,

                                non mi permetteva di uscire nel momento in cui si premeva

                                il pulsante di abort....essendo multitasking se termini

                                il processo che ha lanciato il task , non vuol dire terminare

                                il task in esecuzione.. non so se mi sono spiegato...bene...

                                in altri termini...se atterri chi ha lanciato la pietra...non vuol dire che la pietra smetta la sua corsa :asd:

                                specialmente se chi tira la pietra è scritto in C, e la pietra e scritta in assembler....

                                mi fermo qui....è meglio....:uglystupid2:

                                1 Risposta Ultima Risposta
                                0
                                • T Non in linea
                                  T Non in linea
                                  Totocellux
                                  scritto su ultima modifica di
                                  #285

                                  bonis62 ha scritto:

                                  grazie

                                  anche se devo dire che il codice che gestisce

                                  fino a 24 cores non è da meno dell'algoritmo :),

                                  il "wait" del multithread ho dovuto riscriverlo a modo mio,

                                  altrimenti il ciclo, in attesa che uno dei threads terminava,

                                  non mi permetteva di uscire nel momento in cui si premeva

                                  il pulsante di abort....essendo multitasking se termini

                                  il processo che ha lanciato il task , non vuol dire terminare

                                  il task in esecuzione.. non so se mi sono spiegato...bene...

                                  in altri termini...se atterri chi ha lanciato la pietra...non vuol dire che la pietra smetta la sua corsa :asd:

                                  non so quanto sia nidificato e profondo tale tipo di controllo, hai calcolato quanto ha inciso sull'efficienza, cioè quanto ti è costato in termini di % sul ciclo primario?

                                  1 Risposta Ultima Risposta
                                  0
                                  • X Non in linea
                                    X Non in linea
                                    Xstreme
                                    scritto su ultima modifica di
                                    #286

                                    Totocellux ha scritto:

                                    non so quanto sia nidificato e profondo tale tipo di controllo, hai calcolato quanto ha inciso sull'efficienza, cioè quanto ti è costato in termini di % sul ciclo primario?

                                    in multithreading non devi più ragionare cosi.....

                                    mi spiego meglio...con un esempio

                                    {

                                    un cavo porta corrente a 24 lampadine

                                    questo è quando lavoravi senza multithreading

                                    }

                                    {

                                    24 cavi portano corrente a 24 lampadine

                                    questo è quando lavori con il multithreading

                                    }

                                    {

                                    la lampadina senza corrente si spegne

                                    }

                                    {

                                    un thread per restare "acceso" deve rimanere all'interno

                                    un ciclo che ne permette la sua esecuzione fino alla fine

                                    }

                                    quindi....

                                    se fai un controllo per verificare, per esempio che

                                    il thread n. 15 ha terminato, se il controllo

                                    non è lui stesso inserito in un contesto multithreading,

                                    ritorniamo alla singola esescuzione monocorde,

                                    per non nidificare basta creare un multithreading nel multithreading,

                                    dove cè la classe multithreading che esegue i cicli di calcolo,

                                    ((la classe multithreading al suo interno non deve contenere

                                    thread figli, altrimenti il controllo del singolo threads va a pallini :) ))

                                    l'atro mutithreading controlla che la classe multithreadig "calcoli"

                                    abbia terminato di far lavorare tutti i thread aperti sui singoli cores,

                                    quando la classe multithreading "controllo" ha tutti i registri a zero,

                                    significa che tutti i threads "calcoli" hanno concluso,

                                    preleva il tempo trascorso e lo visualizza;

                                    finchè lavori in mono linguaggio questo è releativamente

                                    semplice, ma come tu ben sai, il pacchetto e composto

                                    da 3 linguaggi, --- basic , c , assembler ---

                                    il basic racchiude il C, il C racchiude l'assembler,

                                    quindi

                                    con l'assembler faccio i calcoli,

                                    con il C gestisco la classe multhithread "calcoli"

                                    con il basic gestisco la classe multithread "controllo"

                                    basic > controlla C > controlla assembler > controlla calcoli

                                    con un return del C ho il tempo impiegato,

                                    con il basic lo stampo a schermo

                                    The End

                                    :uglystupid2::uglystupid2::uglystupid2::uglystupid2::uglystupid2::uglystupid2:

                                    ps

                                    nella versione che sto scrivendo, nei tempi morti di controllo

                                    della classe multithread "calcoli" ho inserito una pezza scritta

                                    in C che esegue un "memmove" a 20Kb di dati 100 volte al

                                    secondo in modo che nel risultato finale rientri anche la

                                    velocità delle memorie, ho usato 20Kb per rimanere sempre

                                    in ambito memoria fisica, altrimenti mi usava lo swap da disco

                                    con i vecchi pentium o amd.

                                    1 Risposta Ultima Risposta
                                    0
                                    • A Non in linea
                                      A Non in linea
                                      apix_1024
                                      scritto su ultima modifica di
                                      #287

                                      fantastico... pure un pò di cicli sulle ram!! incredibile!! :AAAAH::AAAAH::AAAAH: ed hai spiegato bene anche la parte della programmazione. insomma se l'ho capita io dopo 19 ore di attività cerebrale devo dire che è proprio spiegata benissimoO0O0O0

                                      1 Risposta Ultima Risposta
                                      0
                                      • T Non in linea
                                        T Non in linea
                                        Totocellux
                                        scritto su ultima modifica di
                                        #288

                                        mmmhhhh ........

                                        eravamo partiti da questo problema che tu avevi rilevato:

                                        bonis62 ha scritto:

                                        grazie

                                        [..........]

                                        il "wait" del multithread ho dovuto riscriverlo a modo mio,

                                        altrimenti il ciclo, in attesa che uno dei threads terminava,

                                        non mi permetteva di uscire nel momento in cui si premeva

                                        il pulsante di abort....

                                        [..........]

                                        quindi ti ho chiesto:

                                        non so quanto sia nidificato e profondo tale tipo di controllo, hai calcolato quanto ha inciso sull'efficienza, cioè quanto ti è costato in termini di % sul ciclo primario?

                                        in sintesi, mi hai risposto:

                                        bonis62 ha scritto:

                                        in multithreading non devi più ragionare cosi.....

                                        [..........]

                                        {

                                        un thread per restare "acceso" deve rimanere all'interno

                                        un ciclo che ne permette la sua esecuzione fino alla fine

                                        }

                                        quindi....

                                        per non nidificare basta creare un multithreading nel multithreading,

                                        dove cè la classe multithreading che esegue i cicli di calcolo,

                                        ((la classe multithreading al suo interno non deve contenere

                                        thread figli, altrimenti il controllo del singolo threads va a pallini :) ))

                                        1) l'atro mutithreading controlla che

                                        2) la classe multithreading "calcoli" abbia terminato di far lavorare tutti i thread aperti sui singoli cores,

                                        [..........]

                                        riformulo la domanda, ed esponendola in diverso modo spero di essere più diretto.

                                        Per risolvere quel problema inerente il tasto abort hai utilizzato un sistema di classi, e al momento non ha importanza in che linguaggio esse siano state scritte.

                                        dopo che viene premuto il tasto abort, quanti cicli della propria elaborazione impiega mediamente la classe multithreading "calcoli" o chi per essa (la classe multithreading di controllo) per accorgersi dell'evento e quindi avere la contezza che il calcolo debba essere immediatamente interrotto?

                                        1 Risposta Ultima Risposta
                                        0
                                        • X Non in linea
                                          X Non in linea
                                          Xstreme
                                          scritto su ultima modifica di
                                          #289

                                          Totocellux ha scritto:

                                          mmmhhhh ........

                                          eravamo partiti da questo problema che tu avevi rilevato:

                                          quindi ti ho chiesto:

                                          in sintesi, mi hai risposto:

                                          riformulo la domanda, ed esponendola in diverso modo spero di essere più diretto.

                                          Per risolvere quel problema inerente il tasto abort hai utilizzato un sistema di classi, e al momento non ha importanza in che linguaggio esse siano state scritte.

                                          dopo che viene premuto il tasto abort, quanti cicli della propria elaborazione impiega mediamente la classe multithreading "calcoli" o chi per essa (la classe multithreading di controllo) per accorgersi dell'evento e quindi avere la contezza che il calcolo debba essere immediatamente interrotto?

                                          su un calcolo con quad core

                                          ho inserito il rilevamento dei millisecondi

                                          alla pressione del tasto reset,

                                          ho inserito un altro rilevamento sulla linea di codice

                                          che toglie "corrente" alla classe "calcolo" :

                                          premuto reset 183984037

                                          intercettato in 183984038

                                          1 millisecondo

                                          Max Clock Speed (+/- 5% MHz) : 3347

                                          1000 diviso 3347

                                          0,29 cicli

                                          :)

                                          1 Risposta Ultima Risposta
                                          0

                                          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
                                          Rispondi
                                          • Risposta alla discussione
                                          Effettua l'accesso per rispondere
                                          • Da Vecchi a Nuovi
                                          • Da Nuovi a Vecchi
                                          • Più Voti


                                          • Accedi

                                          • Non hai un account? Registrati

                                          • Accedi o registrati per effettuare la ricerca.
                                          Powered by NodeBB Contributors
                                          • Primo post
                                            Ultimo post
                                          0
                                          • Categorie
                                          • Recenti
                                          • Tag
                                          • Popolare
                                          • Utenti
                                          • Gruppi