Visualizza feed RSS

Anis

Report sviluppo 02/12/11 eMule AdunanzA 3.18

Rating: 2 votes, 5,00 average.
Salve gente! Siamo ormai in definitiva conclusione di sviluppo del ramo closed beta. L'ultimo aspetto che è stato trattato oltre ad una serie di bugfix consultabili dal dna: http://dna.adunanza.net è stato il nuovo stimatore di fonti, che di per se non ha subìto tante variazioni, quanto ottimizzazioni di vario tipo che vi elencherò di seguito.

Codice:
kadavailability = sqrt((sqrt(NormalizzaStima(kadavailability, first, last))*kadavailability)); //fonti
Codice:
ckadavailability = sqrt((sqrt(NormalizzaStima(ckadavailability, first, last))*ckadavailability)); //fonti complete
Codice:
float NormalizzaStima(registerfloat avail, register uint32 from, register uint32 to) 
registerfloat norm_factor = COEFFICENTE_STIMA;
 //Anis -> Ottimizzazione
 avail = min(avail, 100000);
 if (avail > theApp.rm->kadFreshGuess_NoNorm) {
  if (to > from)
   norm_factor = (to - from)/theApp.rm->kadRepublishTimeK;
  else
   norm_factor = COEFFICENTE_STIMA;
  norm_factor = (norm_factor < theApp.rm->kadFreshGuess_Tol ? theApp.rm->kadFreshGuess_Tol : norm_factor);
// We have a good number of publishes, but not high.
// Low normalization is still suggested.
 
 if (avail < theApp.rm->kadFreshGuess_LowNorm && norm_factor > avail / theApp.rm->kadFreshGuess_LowNorm)
              norm_factor /= powf(avail/theApp.rm->kadFreshGuess_LowNorm, 0.5f);
    }
if (avail > 2.f)
 avail /= powf(norm_factor, theApp.rm->kadFreshGuess_Weight);
return avail;
 
}

dove COEFFICENTE_STIMA è una define di tipo intero senza segno. Più è alto il suo valore, più basse saranno le stime. Chiaramente il valore è stato calibrato in modo millimetrico tramite varie formule inverse che ho applicato su carta.
Attualmente il suo valore è 2.
Ricordo che non si tratta di un nuovo algoritmo ma di un miglioramento dello stimatore di lupz (ex sviluppatore AduTeam), e rappresenta a tutti gli effetti la nuova versione dello stimatore di fonti di eMule AdunanzA, utilizzabile nell'imminente eMule AdunanzA 3.18 public beta.

Stima 3.16
Clicca sull'immagine per la versione estesa

Nome:stima3.16.jpg
Visite: 253
Dimensione: 160,3 KB
ID: 988

Stima 3.18
Clicca sull'immagine per la versione estesa

Nome:stima3.18.jpg
Visite: 286
Dimensione: 148,3 KB
ID: 989

Aggiornato 2nd December 2011 alle 15:18 da Anis

Categories
Sviluppo Progetto AdunanzA , Tecnologia , Software Development

Commenti

Trackbacks