Forum: Win32/Win64 API (native code)
by Zacherl,
13. Okt 2017
Zu RDTSC:
Möglichst hohe Genauigkeit ist für normale Timer-Zwecke aber ja eh ziemlich irrelevant. So wie ich es verstanden habe, will der TE nur einen performanten Timer, welcher auch bei langen Laufzeiten nicht overflowt. Weitere Kriterien wurden ja nicht genannt. Zum Benchmarken ist unter Windows sicherlich QueryPerformanceCounter die bessere Lösung. Außerdem sollte man dann die CPU Mask...
Forum: Win32/Win64 API (native code)
by Zacherl,
11. Okt 2017
type
TTest = record
strict private
class threadvar High: UInt64;
class threadvar LastLow: Cardinal;
public
class function GetTickCount64: UInt64; static; inline;
end;
{ TTest }
Forum: Win32/Win64 API (native code)
by Zacherl,
11. Okt 2017
Sollte in etwa so aussehen:
threadvar
High: UInt64;
LastLow: Cardinal;
function _GetTickCount64: UInt64; inline;
var
Low: Cardinal;
begin
Low := GetTickCount;
Forum: Win32/Win64 API (native code)
by Zacherl,
11. Okt 2017
Hier gibt es dazu noch einen Artikel mit Workarounds:
http://terryto-blog.tumblr.com/post/6722591298/gettickcount64-alternatives