Español
Fuente/ Codesnippets

CPU-Performance Counter para ältere Profano-Versionen

 

p.specht

El API-Características QueryPerformanceCounter() verwendet 64-Bit-unsigned Integers. In XProfan11 gab´s el todavía no. Nachstehende Bastelei debería como abhelfen - el KANN klappen oder Müll ser, ni idea! Ohne jede Gewähr:
Windowtitle "CPU Performance Counters z.B. para Benchmark Tests auslesen (de Profano 9 bajo XP)"
Declarar Frequenz&[1],Start&[1],Ende&[1],Test&[1]
Declarar Frequenz!,Start!,Ende!,Test!,Sekunden!,Durchläufe&
Def QueryPerformanceFrequency(1), !"Kernel32", "QueryPerformanceFrequency"
Def QueryPerformanceCounter(1) !"Kernel32", "QueryPerformanceCounter"
QueryPerformanceFrequency(Addr(Frequenz&[0]))
CLS:Font 2:Sleep 500
Frequenz! = if(Frequenz&[1]<0,Frequenz&[1]+2^32,Frequenz&[1])*2^32 + \
if(Frequenz&[0]<0,Frequenz&[0]+2^32,Frequenz&[0])
imprimir "\n\n CPU-Frequenz: ";Frequenz!*10^-6;" [GHz]"
imprimir "\n-----------------------------------------------------------"
Durchläufe&=2*10^6
imprimir "\n Test comenzó para ";format$("###,###,###,###",Durchläufe&);" Durchläufe..."
'-------------------------------------------------------------------
QueryPerformanceCounter(Addr(Start&[0]))

WhileLoop Durchläufe&

    '
    ' HIER KOMMT DER ZU BENCHMARKENDE PROGRAMMTEIL REIN!!!
    '

EndWhile

QueryPerformanceCounter(Addr(Ende&[0]))
'-------------------------------------------------------------------
Ende! = if(Ende&[1]<0,Ende&[1]+2^32,Ende&[1])*2^32+if(Ende&[0]<0,Ende&[0]+2^32,Ende&[0])
Start! = if(Start&[1]<0,Start&[1]+2^32,Start&[1])*2^32+if(Start&[0]<0,Start&[0]+2^32,Start&[0])
imprimir "\n-----------------------------------------------------------"
beep:imprimir " Test final."
Test!=Ende!-Start!:Sekunden! = Test!/Frequenz!
Imprimir "\n\n        Gesamtdauer: ";format$("%g",Sekunden!);" Sekunden"
Imprimir "\n Dauer je Durchlauf: ";format$("%g",10^6*Sekunden!/Durchläufe&);" Mikrosekunden"
Imprimir "\n Das entspricht rund ";format$("###,###,##0",Durchläufe&/Sekunden!);" Durchläufen pro Sekunde."
imprimir "\n-----------------------------------------------------------"
Imprimir "\n\n Beenden con Tastendruck!"
WaitInput 1000*60*5
End
 
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
11.05.2021  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

752 Views

Untitledvor 0 min.
RudiB.08.09.2022
p.specht26.11.2021
Sven Bader17.08.2021
Ernst21.07.2021
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie