52.225 la 4ghz FX8350 ... la inceput a pornit in 100% load, apoi a scazut treptat pana la 75% e mult mai bine decat inainte. oricum nu stiu care e faza dar am scoruri cam naspa in PI asta pe langa toti cu FX8350... meh
Am rescris algoritmul care calculeaza zecimalele lui PI folosind Bailey–Borwein–Plouffe formula:
Algoritmul este mai lent dar este de complexitate mai mare si scaleaza foarte bine pe Multi-Core, ceea ce ne intereseaza - in a realiza o aplicatie PI Multicore care sa reflecte diferenta reala dintre diferite procesoare cu x-nuclee [Intel / AMD].
Datorita complexitatii algoritmului, numarul maxim de zecimale pentru PI in interfata este limitat la 40.000.
Rulati acum si spuneti-mi cum scaleaza pe Multi-Core. Multumesc! Acum putem face comparatii mai concludente intre diferite procesoare, analizand performanta single si multi-core.
Atasat, noul BUILD al aplicatiei.
__________________ IMAWO INC : Proiectul de suport al micilor antreprenori prin soluții informatice personalizate. www.imawo.ro
Stiu asta, inainte ma refeream , toti cu 8350 aveau cu 0.5-2 secunde mai rapid, acum asta e scorul, am zis 4ghz fiindca aplicati nu foloseste boot-ul corect, rectific e facut la 4.1ghz
tphase, adineauri am primit un mail ce m-a dus imediat cu gandul la tine, si anume:
"Dear darco_2,
If you have been following the HWBOT Rev.5 development this will probably not come as a surprise, but with the release of engine revision R5.1.0 and R5.2.0, we now support 3rd party benchmark application management at HWBOT. In human language, this means that anyone who is developing a benchmark application can now easily get a ranking up and running at HWBOT, whether it's for purely for debugging or real competition purposes!
The process of creating a benchmark ranking for your application has been simplified to a 7-step wizard guide all described in the Generic API and demonstrated with a practical example in our forum thread.
The 7 step process includes:
Step 1 - Wizard: define general settings (1/3)
Step 2 - Wizard: define score settings (2/3)
Step 3 - Wizard: security settings (3/3)
Step 4 - Prepare you benchmark!
Step 5 - Locate your benchmark under your profile account settings
Step 6 - Update your benchmark settings (mostly the same settings)
Step 7 - Find your benchmark amongst the others
Step 8 - Watch overclockers set new records!
If you're currently developing or have already released your own benchmark, feel free to give the API a try! In case of question or problems, feel free to get in touch with Pieter ([email protected]) or check out the HWBOT forums.
Uite cum arata pe un i5 650@3325Mhz (in OC nu am cum sa pun pentru ca placa de baza e o Intel Entry Level)
__________________ Ne nastem pe rand si murim pe sarite.
Sa-ti dea iubita papucii spunand ca puteti ramane prieteni e ca si cum ti-ar muri cainele si maica-ta iti spune ca poti sa-l pastrezi.
3570K@4300 cu benchul rulat in absolut aceleasi conditii. Niste loopori vizibile ar fi de ajutor in benchuri 2d deoarece, asa cum e acum, esti nevoit sa astepti sa expire tot timpul pentru a vedea daca ai facut progrese sau nu, in cazul in care ai facut niste tweakuri etc.
P.S.: acum vad pe screenshoturi, acel "Wait..." nu dispare dupa rulare :P
1. Nu folosi StopWatch, incearca QueryPerformanceCounter. 2. Muta timerul dupa sbPI.Clear(), nu vrei sa contorizezi decat calculul in sine Ma uitam la versiune mai veche.
3. http://msdn.microsoft.com/en-us/magazine/cc163328.aspx
1. Nu folosi StopWatch, incearca QueryPerformanceCounter. 2. Muta timerul dupa sbPI.Clear(), nu vrei sa contorizezi decat calculul in sine Ma uitam la versiune mai veche.
3. http://msdn.microsoft.com/en-us/magazine/cc163328.aspx
Tkx man. Nu am folosit:
Code:
Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Background, new EmptyDelegate(delegate { }));
sau
Code:
System.Windows.Forms.Application.DoEvents();
Pentru ca, actualizarea UI consuma timpi de procesor si nu mai e relevant benchmark-ul. Ideea nu este ca aplicatia sa fie responsiva pe parcursul testului, ci sa utilizeze la maxim core-urile disponibile.
Ideea aplicatiei este sa streseze procesorul, sa utilizeze efficient core-urile disponibile, nu neaparat sa obtina un anumit rezultat in cel mai scurt timp. Am un algoritm pentru PI care este foarte rapid, dar nu scaleaza pe multicore, si asta il face ineficient pentru targetul aplicatiei acestea.
__________________ IMAWO INC : Proiectul de suport al micilor antreprenori prin soluții informatice personalizate. www.imawo.ro
Ideea aplicatiei este sa streseze procesorul, sa utilizeze efficient core-urile disponibile, nu neaparat sa obtina un anumit rezultat in cel mai scurt timp.
Atunci nu ar trebui sa ai nicio problema cu eliberarea thread-ului UI si actualizarea ferestrei...
Atunci nu ar trebui sa ai nicio problema cu eliberarea thread-ului UI si actualizarea ferestrei...
In mare, a actualiza thread-ul UI, e la fel ca un NOP in assembler. Influenteaza negativ stresul pentru processor, pentru ca intervine renderul DX pentru a actualiza interfata grafica. Pe un PC poate fi randata hardware pe GPU, pe altul poate fi randata prin emulare software, iar rezultatele nu mai sunt concludente.
__________________ IMAWO INC : Proiectul de suport al micilor antreprenori prin soluții informatice personalizate. www.imawo.ro
Stii cum ne dam seama de asta, nu? Compileaza doua versiuni ale benchmark-ului, una cu alta fara eliberarea thread-ului UI, si o sa rulez pe XP cu si fara hardware acceleration, apoi pe Windows 7 cu DWM-ul vietii. Atunci vedem cat influenteaza, dar intuitia mea imi spune ca aproape deloc daca programul tau nu schimba efectiv fereastra pe durata benchmark-ului.
Pentru ca suntem extremi la hardware, sa fim extremi si la programare. Daca versiunea initiala era scrisa in Visual C# si WPF on top of .Net Framework 4.0, versiunea care este pe teava este scrisa in Visual C++, MFC si Win32 API.
Iar pentru versiunea in Visual C++ in loc de StopWatch am folosit QueryPerformanceCounter din Win32 API.
Atasat 2 capturi de ecran comparative, single-thread, PI, 39.000 de zecimale...
Urmeaza sa postez versiunea completa a aplicatiei dupa ce termin lucrul la ea. Rezultatele par promitatoare, ce spuneti?
__________________ IMAWO INC : Proiectul de suport al micilor antreprenori prin soluții informatice personalizate. www.imawo.ro
Viziteaza-ne pe Facebook
Urmareste-ne pe Twitter
Vezi ce facem pe YouTube