MegaV0lt
Spezialist
Wie sieht es damit aus:
Ich habe mal gelesen, dass pni auch sse3 bedeutet...
Ich habe das mal getestet. Bei mir zumindest wird das Ergebnis schlechter, wenn ich -msse3 mit angebe...
Ich schreibe ab sofort hier weiter, da mein Englisch nicht so gut ist.
Ich habe nun das Skript laufen lassen und diese Ergebnisse:
Code:
elif echo "$_CPU" | grep -E -q "(k8|c3-2)"; then
if echo "$flags" | grep -q "sse3"; then
if try_gcc_options "-msse3"; then #gcc >= 3.3.3
_FLAGS="-msse3"
fi
Ich habe das mal getestet. Bei mir zumindest wird das Ergebnis schlechter, wenn ich -msse3 mit angebe...
Ich schreibe ab sofort hier weiter, da mein Englisch nicht so gut ist.
Ich habe nun das Skript laufen lassen und diese Ergebnisse:
hdvdr01 sc # ./cpuopt.sh
### FFdecsa optimization helper/benchmark
### Version 8
### CPU-INFO ###
System: x86
Auto detected arch: k8
Vendor-ID: AuthenticAMD
CPU-Family: 15
CPU-Model: 107
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv
Using compilers "native" flags
### FFdeCSA TEST ###
Using compiler: g++
with flags: -O3 -march=native -fomit-frame-pointer -fexpensive-optimizations -funroll-loops
Trying various FFdecsa optimizations...
PARALLEL_32_INT: test failed
PARALLEL_64_2INT: test failed
PARALLEL_64_LONG: 89
PARALLEL_64_MMX: 163
PARALLEL_128_2LONG: 98
PARALLEL_128_2MMX: 173
PARALLEL_128_SSE: 158
PARALLEL_128_SSE2: 161
Choosing PARALLEL_MODE = PARALLEL_128_2MMX (173 Mbit/s)
### VDR-SC FFdeCSA Makefile OPTS ###
CPUOPT ?= native
PARALLEL ?= PARALLEL_128_2MMX
CSAFLAGS ?= -O3 -fomit-frame-pointer -fexpensive-optimizations -funroll-loops
### GENERIC FFdeCSA make OPTS ###
FLAGS="-O3 -march=native -fomit-frame-pointer -fexpensive-optimizations -funroll-loops" PARALLEL_MODE=PARALLEL_128_2MMX
Wenn ich das in das Makefile eintrage, dann bekomme ich:hdvdr01 sc # ./cpuopt.sh -n
### FFdecsa optimization helper/benchmark
### Version 8
### CPU-INFO ###
System: x86
Auto detected arch: k8
Vendor-ID: AuthenticAMD
CPU-Family: 15
CPU-Model: 107
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv
Compilers "native" flags disabled or unsupported
### FFdeCSA TEST ###
Using compiler: g++
with flags: -O3 -march=k8 -fomit-frame-pointer -fexpensive-optimizations -funroll-loops
Trying various FFdecsa optimizations...
PARALLEL_32_INT: test failed
PARALLEL_64_2INT: test failed
PARALLEL_64_LONG: 97
PARALLEL_64_MMX: 163
PARALLEL_128_2LONG: 101
PARALLEL_128_2MMX: 195
PARALLEL_128_SSE: 156
PARALLEL_128_SSE2: 198
Choosing PARALLEL_MODE = PARALLEL_128_SSE2 (198 Mbit/s)
### VDR-SC FFdeCSA Makefile OPTS ###
CPUOPT ?= k8
PARALLEL ?= PARALLEL_128_SSE2
CSAFLAGS ?= -O3 -fomit-frame-pointer -fexpensive-optimizations -funroll-loops
### GENERIC FFdeCSA make OPTS ###
FLAGS="-O3 -march=k8 -fomit-frame-pointer -fexpensive-optimizations -funroll-loops" PARALLEL_MODE=PARALLEL_128_SSE2
Die Ergebnisse Schwankenmake[1]: Entering directory `/usr/local/src/vdr-1.7.18/PLUGINS/src/sc-hg_patched/FFdecsa'
g++ -O3 -fomit-frame-pointer -fexpensive-optimizations -funroll-loops -march=k8 -DPARALLEL_MODE=PARALLEL_128_SSE2 -c FFdecsa.c
g++ -O3 -fomit-frame-pointer -fexpensive-optimizations -funroll-loops -march=k8 -DPARALLEL_MODE=PARALLEL_128_SSE2 -c FFdecsa_test.c
g++ -O3 -fomit-frame-pointer -fexpensive-optimizations -funroll-loops -march=k8 -o FFdecsa_test FFdecsa_test.o FFdecsa.o
FFdecsa 1.0: testing correctness and speed
CORRECT!
CORRECT!
CORRECT!
CORRECT!
CORRECT!
speed=247.986792 Mbit/s
speed=168469.288049 pkts/s
Das ist aber besser, als die von hand Optimierten Flags (ca. 170 MBit/s)speed=251.606728 Mbit/s
speed=170928.483522 pkts/s
Zuletzt bearbeitet von einem Moderator: