Overflow af clock_t
HejJeg har et problem med overflow at clock_t variable fra ctime lib'et bliver for store (clock_t svarer normalt til en 32bit integer). Den primære årsag til dette er, at inkrementeringen per sekund (CLOCKS_PER_SEC) er særdeles stor i POSIX miljø'er (hvor jeg blandt andet anvender mine programmer). Størrelsen af CLOCKS_PER_SEC er omkring 1000000, hvilket giver omkring 36 minutter til at måle tiden i.
Da mine programmer kan tage alt fra et par sekunder til adskillige 100 timer, så vil jeg høre om, der er nogle, som har en idé til, hvorledes man kan få en bedre timing. Kravene til denne er følgende:
1) Skal være platformsuafængigt, da jeg anvender programmerne i både Linux og Windows, og det skal kunne anvendes på forskellige processortyper.
2) Skal kunne måle tiden præcist både ved korte og lange kørsler (Her mener jeg den forbrugte CPU tid og ikke realtid). Begge ting kunne være opflydt hvis clock_t var en 64bit integer eller hvis CLOCKS_PER_SEC kunne sættes ned til noget mindre. Dog er den første klart at foretrække.
/range
http://cpp.range.dk