Mercurial > mplayer.hg
view cputable.h @ 4689:61f4b8fd380e
Fixing "quake" by direct waiting of vsync.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(I don't why - but SMART_SWITCH is always disabled on my card)
Benchmarks:
[SRC] VIDEO: [DIV3] 624x356 24bpp 24.00 fps 497.3 kbps (60.7 kbyte/s)
[DEST] 1024x768@32 70fps (-xvidix -fs -zoom)
-vc ffdivx -double:
BENCHMARKs: V: 3.838s VO: 7.305s A: 0.555s Sys: 18.264s = 29.962s
BENCHMARK%: V: 12.8110% VO: 24.3808% A: 1.8518% Sys: 60.9564% = 100.0000%
total video time: 11.143s
-vc ffdivx -nodouble:
BENCHMARKs: V: 3.846s VO: 1.668s A: 0.539s Sys: 23.869s = 29.922s
BENCHMARK%: V: 12.8525% VO: 5.5744% A: 1.8015% Sys: 79.7716% = 100.0000%
total video time: 5.514s
-vc divxds -double (direct rendering)
BENCHMARKs: V: 8.275s VO: 5.750s A: 0.532s Sys: 15.414s = 29.971s
BENCHMARK%: V: 27.6115% VO: 19.1850% A: 1.7737% Sys: 51.4298% = 100.0000%
total video time: 14.070s
-vc divxds -nodouble (direct rendering)
BENCHMARKs: V: 7.353s VO: 0.002s A: 0.521s Sys: 22.083s = 29.958s
BENCHMARK%: V: 24.5433% VO: 0.0052% A: 1.7382% Sys: 73.7133% = 100.0000%
total video time: 7.355s
Unfortunately we have dramatic lost of performance (100%) :(
author | nick |
---|---|
date | Wed, 13 Feb 2002 08:24:13 +0000 |
parents | 80251482da41 |
children | 164fda5feaa6 |
line wrap: on
line source
/* cputable.h - Maps CPUID to real CPU name. * Copyleft 2001 by Felix Buenemann <atmosfear at users dot sourceforge dot net> * This file comes under the GNU GPL, see www.fsf.org for more info! */ #define MAX_VENDORS 8 /* Number of CPU Vendors */ //#define N_UNKNOWN "unknown" //#define N_UNKNOWNEXT "unknown extended model" #define N_UNKNOWN "" #define N_UNKNOWNEXT "" #define F_UNKNOWN { \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN, \ N_UNKNOWN \ } static const char *cpuname /* Vendor */ [MAX_VENDORS] /* Family */ [16] /* Model */ [16] ={ /* Intel Corporation, "GenuineIntel" */ { /* 0 */ F_UNKNOWN, /* 1 */ F_UNKNOWN, /* 2 */ F_UNKNOWN, /* 3 i386 */ F_UNKNOWN, /* XXX new 386 chips may support CPUID! */ /* 4 i486 */ { /* 0 */ "i486DX-25/33", /* only few of these */ /* 1 */ "i486DX-50", /* support CPUID! */ /* 2 */ "i486SX", /* 3 */ "i486DX2", /* CPUID only on new chips! */ /* 4 */ "i486SL", /* 5 */ "i486SX2", /* 6 */ N_UNKNOWN, /* 7 */ "i486DX2/write-back", /* returns 3 in write-through mode */ /* 8 */ "i486DX4", /* 9 */ "i486DX4/write-back", /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* E */ N_UNKNOWN, /* F */ N_UNKNOWNEXT }, /* 5 i586 */ { /* 0 */ "Pentium P5 A-step", /* 1 */ "Pentium P5", /* 2 */ "Pentium P54C", /* 3 */ "Pentium OverDrive P24T", /* 4 */ "Pentium MMX P55C", /* 5 */ N_UNKNOWN, /* XXX DX4 OverDrive? */ /* 6 */ N_UNKNOWN, /* XXX P5 OverDrive? */ /* 7 */ "Pentium P54C (new)", /* 8 */ "Pentium MMX P55C (new)", /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* E */ N_UNKNOWN, /* F */ N_UNKNOWNEXT }, /* 6 i686 */ { /* 0 */ "PentiumPro A-step", /* 1 */ "PentiumPro", /* 2 */ N_UNKNOWN, /* 3 */ "Pentium II Klamath/Pentium II OverDrive", /* 4 */ N_UNKNOWN, /* XXX P55CT - OverDrive for P54? */ /* 5 */ "Celeron Covington/Pentium II Deschutes,Tonga/Pentium II Xeon", /* 6 */ "Celeron A Mendocino/Pentium II Dixon", /* 7 */ "Pentium III Katmai/Pentium III Xeon Tanner", /* 8 */ "Celeron 2/Pentium III Coppermine,Geyserville", /* 9 */ N_UNKNOWN, /* A */ "Pentium III Xeon Cascades", /* B */ "Celeron 2/Pentium III Tualatin", /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* E */ N_UNKNOWN, /* F */ N_UNKNOWNEXT }, /* 7 IA-64 */ { /* FIXME */ /* 0 */ N_UNKNOWN, /* 1 */ N_UNKNOWN, /* 2 */ N_UNKNOWN, /* 3 */ N_UNKNOWN, /* 4 */ N_UNKNOWN, /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ N_UNKNOWN, /* 8 */ N_UNKNOWN, /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* E */ N_UNKNOWN, /* F */ N_UNKNOWNEXT }, /* 8 */ F_UNKNOWN, /* 9 */ F_UNKNOWN, /* A */ F_UNKNOWN, /* B */ F_UNKNOWN, /* C */ F_UNKNOWN, /* D */ F_UNKNOWN, /* E */ F_UNKNOWN, /* F extended family (P4/new IA-64)*/ { /* 0 */ "Pentium 4 Willamette", /* 1 */ "Pentium 4 Xeon Foster", /*?*/ /* XXX 0.13µm P4 Northwood ??? */ /* 2 */ N_UNKNOWN, /* 3 */ N_UNKNOWN, /* 4 */ N_UNKNOWN, /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ N_UNKNOWN, /* 8 */ N_UNKNOWN, /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* E */ N_UNKNOWN, /* F */ N_UNKNOWNEXT } }, /* United Microelectronics Corporation, "UMC UMC UMC " */ { /* 0 */ F_UNKNOWN, /* 1 */ F_UNKNOWN, /* 2 */ F_UNKNOWN, /* 3 */ F_UNKNOWN, /* 4 486 (U5) */ { /* 0 */ N_UNKNOWN, /* 1 */ "486DX U5D", /* 2 */ "486SX U5S", /* 3 */ N_UNKNOWN, /* 4 */ N_UNKNOWN, /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ N_UNKNOWN, /* 8 */ N_UNKNOWN, /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* E */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 5 */ F_UNKNOWN, /* 6 */ F_UNKNOWN, /* 7 */ F_UNKNOWN, /* 8 */ F_UNKNOWN, /* 9 */ F_UNKNOWN, /* A */ F_UNKNOWN, /* B */ F_UNKNOWN, /* C */ F_UNKNOWN, /* D */ F_UNKNOWN, /* E */ F_UNKNOWN, /* F */ F_UNKNOWN }, /* Advanced Micro Devices, "AuthenticAMD" (very rare: "AMD ISBETTER") */ { /* 0 */ F_UNKNOWN, /* 1 */ F_UNKNOWN, /* 2 */ F_UNKNOWN, /* 3 */ F_UNKNOWN, /* 4 486/5x86 */ { /* 0 */ N_UNKNOWN, /* 1 */ N_UNKNOWN, /* 2 */ N_UNKNOWN, /* 3 */ "486DX2", /* 4 */ N_UNKNOWN, /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ "486DX2/write-back", /* 8 */ "486DX4/5x86", /* 9 */ "486DX4/write-back", /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* E */ "5x86", /* F */ "5x86/write-back" }, /* 5 K5/K6 */ { /* 0 */ "K5 SSA5 (PR75,PR90,PR100)", /* 1 */ "K5 5k86 (PR120,PR133)", /* 2 */ "K5 5k86 (PR166)", /* 3 */ "K5 5k86 (PR200)", /* 4 */ N_UNKNOWN, /* 5 */ N_UNKNOWN, /* 6 */ "K6", /* 7 */ "K6 Little Foot", /* 8 */ "K6-2", /* 9 */ "K6-III Chomper", /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ "K6-2+/K6-III+ Sharptooth", /* E */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 6 K7 */ { /* 0 */ N_UNKNOWN, /* Argon? */ /* 1 */ "Athlon K7", /* 2 */ "Athlon K75 Pluto,Orion", /* 3 */ "Duron SF Spitfire", /* 4 */ "Athlon TB Thunderbird", /* 5 */ N_UNKNOWN, /* 6 */ "Athlon 4 PM Palomino/Athlon MP Multiprocessor/Athlon XP eXtreme Performance", /* 7 */ "Duron MG Morgan", /* 8 */ N_UNKNOWN, /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* E */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 7 */ F_UNKNOWN, /* 8 */ F_UNKNOWN, /* 9 */ F_UNKNOWN, /* A */ F_UNKNOWN, /* B */ F_UNKNOWN, /* C */ F_UNKNOWN, /* D */ F_UNKNOWN, /* E */ F_UNKNOWN, /* F */ F_UNKNOWN }, /* Cyrix Corp./VIA Inc., "CyrixInstead" */ { /* 0 */ F_UNKNOWN, /* 1 */ F_UNKNOWN, /* 2 */ F_UNKNOWN, /* 3 */ F_UNKNOWN, /* 4 5x86 */ { /* 0 */ N_UNKNOWN, /* 1 */ N_UNKNOWN, /* 2 */ N_UNKNOWN, /* 3 */ N_UNKNOWN, /* 4 */ "MediaGX", /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ N_UNKNOWN, /* 8 */ N_UNKNOWN, /* 9 */ "5x86", /* CPUID maybe only on newer chips */ /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* E */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 5 M1 */ { /* 0 */ "M1 test-sample", /*?*/ /* 1 */ N_UNKNOWN, /* 2 */ "6x86 M1", /* 3 */ N_UNKNOWN, /* 4 */ "GXm", /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ N_UNKNOWN, /* 8 */ N_UNKNOWN, /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* E */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 6 M2 */ { /* 0 */ "6x86MX M2/M-II", /* 1 */ N_UNKNOWN, /* 2 */ N_UNKNOWN, /* 3 */ N_UNKNOWN, /* 4 */ N_UNKNOWN, /* 5 */ "Cyrix III Joshua (M2 core)", /* 6 */ "Cyrix III Samuel (WinChip C5A core)", /* 7 */ "C3 Samuel 2 (WinChip C5B core)", /* 8 */ N_UNKNOWN, /* XXX Samuel 3/Ezra? */ /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* E */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 7 */ F_UNKNOWN, /* 8 */ F_UNKNOWN, /* 9 */ F_UNKNOWN, /* A */ F_UNKNOWN, /* B */ F_UNKNOWN, /* C */ F_UNKNOWN, /* D */ F_UNKNOWN, /* E */ F_UNKNOWN, /* F */ F_UNKNOWN }, /* NexGen Inc., "NexGenDriven" */ { /* 0 */ F_UNKNOWN, /* 1 */ F_UNKNOWN, /* 2 */ F_UNKNOWN, /* 3 */ F_UNKNOWN, /* 4 */ F_UNKNOWN, /* 5 Nx586 */ { /* 0 */ "Nx586/Nx586FPU", /* only newer ones support CPUID! */ /* 1 */ N_UNKNOWN, /* 2 */ N_UNKNOWN, /* 3 */ N_UNKNOWN, /* 4 */ N_UNKNOWN, /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ N_UNKNOWN, /* 8 */ N_UNKNOWN, /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* E */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 6 */ F_UNKNOWN, /* 7 */ F_UNKNOWN, /* 8 */ F_UNKNOWN, /* 9 */ F_UNKNOWN, /* A */ F_UNKNOWN, /* B */ F_UNKNOWN, /* C */ F_UNKNOWN, /* D */ F_UNKNOWN, /* E */ F_UNKNOWN, /* F */ F_UNKNOWN }, /* IDT/Centaur/VIA, "CentaurHauls" */ { /* 0 */ F_UNKNOWN, /* 1 */ F_UNKNOWN, /* 2 */ F_UNKNOWN, /* 3 */ F_UNKNOWN, /* 4 */ F_UNKNOWN, /* 5 IDT C6 WinChip */ { /* 0 */ N_UNKNOWN, /* 1 */ N_UNKNOWN, /* 2 */ N_UNKNOWN, /* 3 */ N_UNKNOWN, /* 4 */ "WinChip C6", /* 5 */ N_UNKNOWN, /* 6 */ "Samuel", /* 7 */ N_UNKNOWN, /* 8 */ "WinChip 2 C6+,W2,W2A,W2B", /* 9 */ "WinChip 3 W3", /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* E */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 6 */ F_UNKNOWN, /* 7 */ F_UNKNOWN, /* 8 */ F_UNKNOWN, /* 9 */ F_UNKNOWN, /* A */ F_UNKNOWN, /* B */ F_UNKNOWN, /* C */ F_UNKNOWN, /* D */ F_UNKNOWN, /* E */ F_UNKNOWN, /* F */ F_UNKNOWN }, /* Rise, "RiseRiseRise" */ { /* 0 */ F_UNKNOWN, /* 1 */ F_UNKNOWN, /* 2 */ F_UNKNOWN, /* 3 */ F_UNKNOWN, /* 4 */ F_UNKNOWN, /* 5 mP6 */ { /* 0 */ "mP6 iDragon 6401,6441 Kirin", /* 1 */ "mP6 iDragon 6510 Lynx", /* 2 */ N_UNKNOWN, /* 3 */ N_UNKNOWN, /* 4 */ N_UNKNOWN, /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ N_UNKNOWN, /* 8 */ "mP6 iDragon II", /* 9 */ "mP6 iDragon II (new)", /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* E */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 6 */ F_UNKNOWN, /* 7 */ F_UNKNOWN, /* 8 */ F_UNKNOWN, /* 9 */ F_UNKNOWN, /* A */ F_UNKNOWN, /* B */ F_UNKNOWN, /* C */ F_UNKNOWN, /* D */ F_UNKNOWN, /* E */ F_UNKNOWN, /* F */ F_UNKNOWN }, /* Transmeta, "GenuineTMx86" */ { /* 0 */ F_UNKNOWN, /* 1 */ F_UNKNOWN, /* 2 */ F_UNKNOWN, /* 3 */ F_UNKNOWN, /* 4 */ F_UNKNOWN, /* 5 Crusoe */ { /* 0 */ N_UNKNOWN, /* 1 */ N_UNKNOWN, /* 2 */ N_UNKNOWN, /* 3 */ N_UNKNOWN, /* 4 */ "Crusoe TM3x00,TM5x00", /* 5 */ N_UNKNOWN, /* 6 */ N_UNKNOWN, /* 7 */ N_UNKNOWN, /* 8 */ N_UNKNOWN, /* 9 */ N_UNKNOWN, /* A */ N_UNKNOWN, /* B */ N_UNKNOWN, /* E */ N_UNKNOWN, /* C */ N_UNKNOWN, /* D */ N_UNKNOWN, /* F */ N_UNKNOWN }, /* 6 */ F_UNKNOWN, /* 7 */ F_UNKNOWN, /* 8 */ F_UNKNOWN, /* 9 */ F_UNKNOWN, /* A */ F_UNKNOWN, /* B */ F_UNKNOWN, /* C */ F_UNKNOWN, /* D */ F_UNKNOWN, /* E */ F_UNKNOWN, /* F */ F_UNKNOWN } }; #undef N_UNKNOWNEXT #undef N_UNKNOWN #undef F_UNKNOWN static const struct { char string[13]; char name[48]; } cpuvendors[MAX_VENDORS] ={ {"GenuineIntel","Intel"}, {"UMC UMC UMC ","United Microelectronics Corporation"}, {"AuthenticAMD","Advanced Micro Devices"}, {"CyrixInstead","Cyrix/VIA"}, {"NexGenDriven","NexGen"}, {"CentaurHauls","IDT/Centaur/VIA"}, {"RiseRiseRise","Rise"}, {"GenuineTMx86","Transmeta"} };