Differences

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

Link to this comparison view

asc:teme:tema2 [2026/05/11 10:22]
emil.slusanschi [Bonus]
asc:teme:tema2 [2026/05/21 10:38] (current)
tudor.calafeteanu [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:​** **24 Mai 2026, ora 23:55**. Primiți un bonus de 10% din punctajul obținut pentru trimiterea temei înainte de **21 Mai 2026, ora 23:55**.+  * **Deadline:​** **25 Mai 2026, ora 23:55 <del>24 Mai 2026, ora 23:55</​del>​**. Primiți un bonus de 10% din punctajul obținut pentru trimiterea temei înainte de **23 Mai 2026, ora 23:55 <del>21 Mai 2026, ora 23:55</​del>​**.
   * **Responsabil:​** [[tudor.calafeteanu@upb.ro |Tudor Calafeteanu]]   * **Responsabil:​** [[tudor.calafeteanu@upb.ro |Tudor Calafeteanu]]
 </​note>​ </​note>​
Line 163: Line 163:
  
 <​code>​ <​code>​
-BLOCK_ID,NONCE,​BLOCK_HASH,​TIME_FOR_MERKLE_ROOT_COMPUTATION,​TIME_FOR_NONCE_COMPUTATION,​TIME_SUM+BLOCK_ID,​BLOCK_HASH,​MERKLE_ROOT,​NONCE,​TIME_FOR_MERKLE_ROOT_COMPUTATION,​TIME_FOR_NONCE_COMPUTATION,​TIME_SUM
 </​code>​ </​code>​
  
Line 176: Line 176:
 <spoiler Click pentru a vedea un exemplu de fișier de ieșire> <spoiler Click pentru a vedea un exemplu de fișier de ieșire>
 <​code>​ <​code>​
-1,33865,​0000517db16db1b0a4b3c2a1eee14ebc3c6beaae6420dc90a0643d23a03c167a,​0.10294,0.14677,0.24970 +1,​0000517db16db1b0a4b3c2a1eee14ebc3c6beaae6420dc90a0643d23a03c167a,​edff735b62b37d1afe12e3dcaf3df4da978c857f1ad8f3a8b98c4464fbf0c11c,​33865,0.07091,0.10240,0.17332 
-2,4050,​00007ddf6566d4687489b21cd2764bd286e6958dd7d365fbe30de7ca4b9bbb50,​0.09830,0.01761,0.11592 +2,​00007ddf6566d4687489b21cd2764bd286e6958dd7d365fbe30de7ca4b9bbb50,​ed865ee13c3cdbb2382e3dffab25c95591fbdebaed58c5efed27778114964e4d,​4050,0.07046,0.01225,0.08270 
-3,166127,​00002663dafd560b4a42eca2fba9ee2c4692318b271a40e087af715c238d879d,​0.09814,0.65140,0.74954+3,​00002663dafd560b4a42eca2fba9ee2c4692318b271a40e087af715c238d879d,​606f0d682afbbe8a242e48d77a1d93ef9156dc2d6508ff652da15896d77216b7,​166127,0.07062,0.50269,0.57331
 ..... .....
-10,158592,​0000f5e98829b6fc7d24b890e621b5ca64a6c7c4e4d097a126eae066b54b8de0,​0.07127,0.49897,0.57024 +10,​0000f5e98829b6fc7d24b890e621b5ca64a6c7c4e4d097a126eae066b54b8de0,​38248f1726546451e5f3990f676b857a64d232c002bd06d1ea50ca8609ebfcd4,​158592,0.07069,0.47980,0.55049 
-0.79865,2.10661,2.90526+0.70681,1.86021,2.56703
 </​code>​ </​code>​
 </​spoiler>​ </​spoiler>​
Line 224: Line 224:
   *  Punctajul la testarea automată ([[https://​curs.upb.ro/​2025/​mod/​assign/​view.php?​id=117021|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/​2025/​mod/​assign/​view.php?​id=117021|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 zecimale (exemplu: 0.044 se aproximeaza la 0.04, 0.045 la 0.05, si 0.046 la 0.05).+    * 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 zecimale (exemplu: 0.0044 se aproximeaza la 0.004, 0.0045 la 0.005, si 0.0046 la 0.005).
     * 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/​2025/​mod/​assign/​view.php?​id=117021|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/​2025/​mod/​assign/​view.php?​id=117021|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 (TOTAL_TIME_FOR_MERKLE_ROOT_COMPUTATION):​     * Pentru Merkle root (TOTAL_TIME_FOR_MERKLE_ROOT_COMPUTATION):​
-        * Timp bun:   ≤  0.04s -> 45 pct +        * Timp **bun**:    **0.02s** -> **50 pct** 
-        * Timp mediu: ​≤   0.1s -> 30 pct +        * Timp **mediu**<  **0.03s** -> **35 pct** 
-        * Timp slab:  ​≤   0.5s -> 15 pct +        * Timp **slab**:  ​<  **0.04s** -> **20 pct** 
-        * Timp foarte slab (>0.5s) SAU Merkle root incorect: 0 pct+        * Timp **foarte slab** (>= **0.04s**) SAU Merkle root incorect: ​**0 pct**
     * Pentru căutarea Nonce-ului (TOTAL_TIME_FOR_NONCE_COMPUTATION):​     * Pentru căutarea Nonce-ului (TOTAL_TIME_FOR_NONCE_COMPUTATION):​
-        * Timp bun:   ≤  0.01s -> 45 pct +        * Timp **bun**:    **0.01s** -> **50 pct** 
-        * Timp mediu: ​≤   0.1s -> 30 pct +        * Timp **mediu**<  **0.02s** -> **35 pct** 
-        * Timp slab:  ​≤     ​1s ​-> 15 pct +        * Timp **slab**:  ​<  **0.03s** ​-> **20 pct** 
-        * Timp foarte slab (>1s) SAU Nonce incorect: 0 pct+        * Timp **foarte slab** (>=**0.03s**) SAU Nonce incorect: ​**0 pct**
  
 2. Parte verificată/​notată la interviul/​evaluarea individuală de laborator/​teme,​ de la finalul semestrului:​ maxim **50 pct.**, distribuite astfel: 2. Parte verificată/​notată la interviul/​evaluarea individuală de laborator/​teme,​ de la finalul semestrului:​ maxim **50 pct.**, distribuite astfel:
Line 244: Line 244:
   * maxim **10 pct.** acordate pentru furnizarea prompt-urilor folosite (în format text -- NU imagini! -- sub formă de întrebare și răspuns, ordonate succesiv) în interacțiunea cu unelte de tip LLM (e.g. Gemini, Claude, etc.). Indicați unealta folosită + versiunea acesteia. Explicați de ce prompturile folosite si soluțile oferite sunt utile (sau mai puțin utile). Puneți accent și pe modificările de mână ale codurilor dezvoltate, nu doar pe explicarea unor coduri generate automat.   * maxim **10 pct.** acordate pentru furnizarea prompt-urilor folosite (în format text -- NU imagini! -- sub formă de întrebare și răspuns, ordonate succesiv) în interacțiunea cu unelte de tip LLM (e.g. Gemini, Claude, etc.). Indicați unealta folosită + versiunea acesteia. Explicați de ce prompturile folosite si soluțile oferite sunt utile (sau mai puțin utile). Puneți accent și pe modificările de mână ale codurilor dezvoltate, nu doar pe explicarea unor coduri generate automat.
   * Eventuale disfuncționalități ale codului vor aduce depunctări,​ în urma analziei codului de către asistent. Trebuie să puteți răspunde coerent la întrebarea "de ce" pentru orice bucată de cod din soluția oferită (indiferent de funcția la care se adresează întrebarea).   * Eventuale disfuncționalități ale codului vor aduce depunctări,​ în urma analziei codului de către asistent. Trebuie să puteți răspunde coerent la întrebarea "de ce" pentru orice bucată de cod din soluția oferită (indiferent de funcția la care se adresează întrebarea).
- 
-===== Observații ===== 
- 
-<note warning> 
-Temele vor fi testate împotriva plagiatului. Orice tentativă de copiere va fi depunctată conform [[asc:​regulament|regulamentului]]. 
-Rezultatele notării automate este orientativă și poate fi afectată de corectarea manuală. 
-</​note>​ 
  
 ===== Bonus ===== ===== Bonus =====
Line 280: Line 273:
  
 [1][[https://​bitcoin.org/​bitcoin.pdf|Bitcoin Whitepaper]] [1][[https://​bitcoin.org/​bitcoin.pdf|Bitcoin Whitepaper]]
 +
  
asc/teme/tema2.1778484142.txt.gz · Last modified: 2026/05/11 10:22 by emil.slusanschi
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