Differences

This shows you the differences between two versions of the page.

Link to this comparison view

asc:teme:tema2 [2025/04/27 17:57]
tudor.calafeteanu
asc:teme:tema2 [2025/05/13 16:32] (current)
costin.carabas [Tema 2 - Implementarea în CUDA a arborelui Merkle și a algoritmului de consens Proof of Work din cadrul Bitcoin]
Line 2: Line 2:
  
 <note important>​ <note important>​
-  * **Deadline soft:** **11 Mai 2025, ora 23:55**. Primiți un bonus de 10% din punctajul obținut pentru trimiterea temei înainte de **8 Mai 2025, ora 23:55**. Veți primi o depunctare de 10% din punctajul maxim al temei pentru fiecare zi de întârziere,​ până la maxim 7 zile, adică până pe **18 Mai 2025, ora 23:55**.+  * **Deadline soft:​** ​**18 Mai 2025, ora 23:55** <del>**11 Mai 2025, ora 23:55**. Primiți un bonus de 10% din punctajul obținut pentru trimiterea temei înainte de **8 Mai 2025, ora 23:55**. Veți primi o depunctare de 10% din punctajul maxim al temei pentru fiecare zi de întârziere,​ până la maxim 7 zile, adică până pe **18 Mai 2025, ora 23:55**</​del>​.
   * **Deadline hard:** **18 Mai 2025, ora 23:55**.   * **Deadline hard:** **18 Mai 2025, ora 23:55**.
   * **Responsabili:​** [[tudor.calafeteanu@upb.ro |Tudor Calafeteanu]],​ [[costin.carabas@gmail.com|Costin Carabaș]]   * **Responsabili:​** [[tudor.calafeteanu@upb.ro |Tudor Calafeteanu]],​ [[costin.carabas@gmail.com|Costin Carabaș]]
Line 164: Line 164:
  
 <​code>​ <​code>​
-BLOCK_ID,​NONCE,​BLOCK_HASH,​TIME_FOR_NONCE_COMPUTATION,​TIME_FOR_MERKLE_ROOT_COMPUTATION,​TIME_SUM+BLOCK_ID,​NONCE,​BLOCK_HASH,​TIME_FOR_MERKLE_ROOT_COMPUTATION,​TIME_FOR_NONCE_COMPUTATION,TIME_SUM
 </​code>​ </​code>​
  
-, unde TIME_SUM = TIME_FOR_NONCE_COMPUTATION + TIME_FOR_MERKLE_ROOT_COMPUTATION+, unde TIME_SUM = TIME_FOR_MERKLE_ROOT_COMPUTATION ​+ TIME_FOR_NONCE_COMPUTATION
  
 După procesarea tuturor tranzacțiilor,​ se scriu pe ultimul rând timpii totali pentru fiecare din cele 3 coloane de timpi, adică pentru toate blocurile găsite. Timpii sunt aproximați la cinci zecimale. După procesarea tuturor tranzacțiilor,​ se scriu pe ultimul rând timpii totali pentru fiecare din cele 3 coloane de timpi, adică pentru toate blocurile găsite. Timpii sunt aproximați la cinci zecimale.
  
 <​code>​ <​code>​
-TOTAL_TIME_FOR_NONCE_COMPUTATION,​TOTAL_TIME_FOR_MERKLE_ROOT_COMPUTATION,​TOTAL_TIME_SUM+TOTAL_TIME_FOR_MERKLE_ROOT_COMPUTATION,​TOTAL_TIME_FOR_NONCE_COMPUTATION,​TOTAL_TIME_SUM
 </​code>​ </​code>​
  
Line 230: Line 230:
   * Punctajul la testarea automată ([[https://​curs.upb.ro/​2024/​mod/​assign/​view.php?​id=115685|Moodle]]) se va acorda în funcție de performanța (durata de rulare) a celor două funcții modificate, pentru o suită de teste private, generate de noi, în felul urmator:   * Punctajul la testarea automată ([[https://​curs.upb.ro/​2024/​mod/​assign/​view.php?​id=115685|Moodle]]) se va acorda în funcție de performanța (durata de rulare) a celor două funcții modificate, pentru o suită de teste private, generate de noi, în felul urmator:
     * Fiecare test (asociat unui fișier de intrare) va fi rulat de 5 ori.     * Fiecare test (asociat unui fișier de intrare) va fi rulat de 5 ori.
-    * Se vor selecta timpii minimi obținuți pentru fiecare funcție, independent unul de altul (de exemplu, timpul minim pentru generarea Merkle root-ului poate proveni din a 3-a rulare, iar timpul minim pentru găsirea nonce-ului valid din a 4-a) și vor fi aproximați la 2 zecimale.+    * Se vor selecta timpii minimi obținuți pentru fiecare funcție, independent unul de altul (de exemplu, timpul minim pentru generarea Merkle root-ului poate proveni din a 3-a rulare, iar timpul minim pentru găsirea nonce-ului valid din a 4-a) și vor fi aproximați la 2 zecimale ​(exemplu: 0.044 se aproximeaza la 0.04, 0.045 la 0.05, si 0.046 la 0.05).
     * Timpii rezultați vor fi comparați cu threshold-urile de timp aferente fiecărui test, pentru stabilirea punctajului.     * Timpii rezultați vor fi comparați cu threshold-urile de timp aferente fiecărui test, pentru stabilirea punctajului.
  
   * Pentru a testa local eficiența implementării,​ înainte de încărcarea pe [[https://​curs.upb.ro/​2024/​mod/​assign/​view.php?​id=115685|Moodle]] pentru testarea automată, vă puteți ajuta de următoarele treshold-uri de timp în cazul parametrilor predefiniți din testul 4 (//​test4.in//​):​   * Pentru a testa local eficiența implementării,​ înainte de încărcarea pe [[https://​curs.upb.ro/​2024/​mod/​assign/​view.php?​id=115685|Moodle]] pentru testarea automată, vă puteți ajuta de următoarele treshold-uri de timp în cazul parametrilor predefiniți din testul 4 (//​test4.in//​):​
-    * Pentru Merkle root:+    * Pentru Merkle root (TOTAL_TIME_FOR_MERKLE_ROOT_COMPUTATION):
         * Timp bun:   ​≤ ​ 0.04s -> 45 pct         * Timp bun:   ​≤ ​ 0.04s -> 45 pct
         * Timp mediu: ≤   0.1s -> 30 pct         * Timp mediu: ≤   0.1s -> 30 pct
         * Timp slab:  ≤   0.5s -> 15 pct         * Timp slab:  ≤   0.5s -> 15 pct
         * Timp foarte slab (>0.5s) SAU Merkle root incorect: 0 pct         * Timp foarte slab (>0.5s) SAU Merkle root incorect: 0 pct
-    * Pentru căutarea Nonce-ului:+    * Pentru căutarea Nonce-ului ​(TOTAL_TIME_FOR_NONCE_COMPUTATION):
         * Timp bun:   ​≤ ​ 0.01s -> 45 pct         * Timp bun:   ​≤ ​ 0.01s -> 45 pct
         * Timp mediu: ≤   0.1s -> 30 pct         * Timp mediu: ≤   0.1s -> 30 pct
asc/teme/tema2.1745765876.txt.gz · Last modified: 2025/04/27 17:57 by tudor.calafeteanu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0