the Fract FAQ:
A: Fract is a free, open-source PC benchmark based on realtime software rendering. It is designed to provide 100% unbiased results that really correspond to the raw performance of your CPU and system bus; while the test mainly depends on the CPU, the speed of your system bus (or FSB, Front-Side Bus) is also important, since image data must be copied from the main memory to the video memory every frame.
Fract will run on any Pentium-based PC. It could be recompiled to run on a 486DX,
with the only difference that CPU speed won't be shown on the final "Results"
screen. It requires about 10MB of memory for 640x480.
Fract also requires DirectX (under Windows) and SDL (under linux).
A: A file named stdout.txt (and, possibly, stderr.txt) should exist after running fract. See if it gives you a clue why it's not running. If the error message is something like:
|Unable to set 640x480 resolution...DirectDrawSurface3::Lock: DirectDraw is still drawing!|
Then you should disable the fullscreen Antialiasing in you video card driver (the problem occurs when the FSAA is forced, it won't appear if it is "Application Preference").
A: Not at all, it may depend on its raw 2D performance (especially, memory throughput), but not its 3D capabilities. Be sure you use the latest driver, though. Also, if possible, disable VSync.
A: DJ Bamby from the HardwareBG.com forums has passed over the 100 fps mark. His CPU is a devilishly overclocked Pentium 4 (Prescott) with enabled Hyper-Threadng.
A: Identify your CPU type and speed (if unsure, use CPU-Z). Then use the following table:
|CPU Type||MHz Multiplyer|
|Pentium I (no MMX)||0.00466|
|Pentium IV (Northwood w/o HT)||0.01500|
|Pentium IV (Northwood with HT)||0.02077|
|Pentium IV (Prescott with HT)||0.01939|
To get the expected FPS
for your configuration, multiply your CPU speed (MHz) by the index from the
Note: The table is constructed using data from PC enthusiasts. Most of them use the best chipsets available for their CPUs and usually run their PCs overclocked. If your PC performs slower than "it should", keep in mind that it may be you motherboard or memory which slows you.
A: Fract makes use of extended instruction sets like MMX, MMXext, SSE. The renderer may be broken into two or more threads, which allows parallel execution on multiple CPUs (or on a CPU with HyperThreading technology). Here's an overview how much each instruction set impacts performance:
MMX: Gives 22% speedup on a Pentium, compared to a non-MMX CPU. Less useful on a Pentium II and K6-II. Many currently unused features of the engine also require MMX.
SSE: using vector SSE instructions gave close to 100% performance increase on A64s. About 30% speedup on PIII, 40% on Pentium-M, 50% on Athlon XP.
Hyper-threading: between 20 and 30%; Double CPU: 55-60%.
A: It's a long story. You may read the technical explanation here. As a general rule: use the latest and the fastest drivers for you videocard!
A: Fract draws pixels in the RGB color-space (i.e. 24-bit colors). The Linux version needs to display the image in the YUV color-space (with YUV overlay). So it needs a function that converts an image from the RGB to the YUV colorspace. The --benchmark mode essentialy tests a few functions, which make that conversion. The timing is for a 320x240 image buffer size. This mode is enabled with "--benchmark" command-line switch. The results are very high, since the image size is small, and, also, only a few multiplications and additions are done per pixel.
A: We are working on the .com site, www.fbench.com. A new version is being written. Most of the experimental features of the engine will be added to the benchmark. The benchmark itself is going to be longer, more feature-rich. It will have a "default" configuration, which will generate "result" file. You will be able to upload this file on the site and compare your score to other enthusiasts. We wish we could turn fract into a useful tool for any power PC user.