monteboy
PCAXE Addicted
- Učlanjen(a)
- 01.04.2009.
- Poruka
- 2.019
- Rezultat reagovanja
- 0
Moja konfiguracija
CPU & cooler:
Phenom II X4 965
Motherboard:
Asus M4A79T Deluxe
RAM:
2048 G.Skill 12800HZ
VGA & cooler:
NV 7900 GTO
Case:
no case
PSU:
Silverstone Olympia 1000W
Internet:
DSL-16000
OS & Browser:
Windows 7 Ultimate
Da ne bude da samo citiramo neke clanke i ukazujemo putem linkove da bi podkrepili nesto odlucih da to malo sam pogledam na delu.
sklinuo sam PhysX na develop masini i disassemblirao PhysXcore.dll Verzija 2.8.3
U samom Dll ces pronaci ogroman broj sub-procedura koje sadrze iskljucivo stare instrukcije FPU'a kao sto se da videti na sledecoj slici:
Steta je da NVidia kao jedna renomirana softwerska kuca sa veoma stabilnim i inovativnim drajverima koristi instrukcije u svojoj Library iz 80tih godina...
Ono sto bi pozeljno bilo vec ako SSE2 nemoze bi bilo bar SSE koji je cisto informativno 1999 godine na Pentium III oziveo.
Na moje veliko iznenadjenje uspeo sam da pronadjem i koju SSE sub-proceduru ali su iste daleko u manjini uglavnom dominira stari X87 OPCODE
Best performance practice by NV (sve sami X87 opcode):
sklinuo sam PhysX na develop masini i disassemblirao PhysXcore.dll Verzija 2.8.3
U samom Dll ces pronaci ogroman broj sub-procedura koje sadrze iskljucivo stare instrukcije FPU'a kao sto se da videti na sledecoj slici:
Steta je da NVidia kao jedna renomirana softwerska kuca sa veoma stabilnim i inovativnim drajverima koristi instrukcije u svojoj Library iz 80tih godina...
Ono sto bi pozeljno bilo vec ako SSE2 nemoze bi bilo bar SSE koji je cisto informativno 1999 godine na Pentium III oziveo.
Na moje veliko iznenadjenje uspeo sam da pronadjem i koju SSE sub-proceduru ali su iste daleko u manjini uglavnom dominira stari X87 OPCODE
Best performance practice by NV (sve sami X87 opcode):
Kod:
.text:1010D627 ; ---------------------------------------------------------------------------
.text:1010D628 align 10h
.text:1010D630
.text:1010D630 ; =============== S U B R O U T I N E =======================================
.text:1010D630
.text:1010D630
.text:1010D630 sub_1010D630 proc near ; CODE XREF: sub_1010E670+2AAp
.text:1010D630 ; sub_1010E670+351p ...
.text:1010D630
.text:1010D630 var_90 = dword ptr -90h
.text:1010D630 var_8C = dword ptr -8Ch
.text:1010D630 var_88 = dword ptr -88h
.text:1010D630 var_84 = dword ptr -84h
.text:1010D630 var_80 = dword ptr -80h
.text:1010D630 var_7C = dword ptr -7Ch
.text:1010D630 var_78 = dword ptr -78h
.text:1010D630 var_74 = dword ptr -74h
.text:1010D630 var_70 = dword ptr -70h
.text:1010D630 var_6C = dword ptr -6Ch
.text:1010D630 var_68 = dword ptr -68h
.text:1010D630 var_64 = dword ptr -64h
.text:1010D630 var_60 = dword ptr -60h
.text:1010D630 var_5C = dword ptr -5Ch
.text:1010D630 var_58 = dword ptr -58h
.text:1010D630 var_54 = dword ptr -54h
.text:1010D630 var_50 = dword ptr -50h
.text:1010D630 var_4C = dword ptr -4Ch
.text:1010D630 var_48 = dword ptr -48h
.text:1010D630 var_44 = dword ptr -44h
.text:1010D630 var_40 = dword ptr -40h
.text:1010D630 var_3C = dword ptr -3Ch
.text:1010D630 var_38 = dword ptr -38h
.text:1010D630 var_34 = dword ptr -34h
.text:1010D630 var_30 = dword ptr -30h
.text:1010D630 var_2C = dword ptr -2Ch
.text:1010D630 var_28 = dword ptr -28h
.text:1010D630 var_24 = dword ptr -24h
.text:1010D630 var_20 = dword ptr -20h
.text:1010D630 var_1C = dword ptr -1Ch
.text:1010D630 var_18 = dword ptr -18h
.text:1010D630 var_14 = dword ptr -14h
.text:1010D630 var_10 = dword ptr -10h
.text:1010D630 var_C = dword ptr -0Ch
.text:1010D630 var_8 = dword ptr -8
.text:1010D630 var_4 = dword ptr -4
.text:1010D630
.text:1010D630 sub esp, 90h
.text:1010D636 fld dword ptr [edx]
.text:1010D638 push esi
.text:1010D639 fsub dword ptr [edi]
.text:1010D63B mov esi, eax
.text:1010D63D fst [esp+94h+var_50]
.text:1010D641 fld dword ptr [edx+4]
.text:1010D644 fsub dword ptr [edi+4]
.text:1010D647 fst [esp+94h+var_4C]
.text:1010D64B fld dword ptr [edx+8]
.text:1010D64E fsub dword ptr [edi+8]
.text:1010D651 fstp [esp+94h+var_48]
.text:1010D655 fld dword ptr [ebx]
.text:1010D657 fsub dword ptr [edi]
.text:1010D659 fst [esp+94h+var_40]
.text:1010D65D fld dword ptr [ebx+4]
.text:1010D660 fsub dword ptr [edi+4]
.text:1010D663 fst [esp+94h+var_3C]
.text:1010D667 fld dword ptr [ebx+8]
.text:1010D66A fsub dword ptr [edi+8]
.text:1010D66D fst [esp+94h+var_38]
.text:1010D671 fld dword ptr [esi+0Ch]
.text:1010D674 fsub dword ptr [esi]
.text:1010D676 fstp [esp+94h+var_74]
.text:1010D67A fld dword ptr [esi+10h]
.text:1010D67D fsub dword ptr [esi+4]
.text:1010D680 fst [esp+94h+var_70]
.text:1010D684 fld dword ptr [esi+14h]
.text:1010D687 fsub dword ptr [esi+8]
.text:1010D68A fst [esp+94h+var_6C]
.text:1010D68E fld dword ptr [edi]
.text:1010D690 fsub dword ptr [esi]
.text:1010D692 fstp [esp+94h+var_68]
.text:1010D696 fld dword ptr [edi+4]
.text:1010D699 fsub dword ptr [esi+4]
.text:1010D69C fstp [esp+94h+var_64]
.text:1010D6A0 fld dword ptr [edi+8]
.text:1010D6A3 fsub dword ptr [esi+8]
.text:1010D6A6 fstp [esp+94h+var_60]
.text:1010D6AA fmul st, st
.text:1010D6AC fld st(1)
.text:1010D6AE fmulp st(2), st
.text:1010D6B0 faddp st(1), st
.text:1010D6B2 fld [esp+94h+var_74]
.text:1010D6B6 fld st
.text:1010D6B8 fmul st, st(1)
.text:1010D6BA faddp st(2), st
.text:1010D6BC fxch st(1)
.text:1010D6BE fst [esp+94h+var_2C]
.text:1010D6C2 fstp [esp+94h+var_28]
.text:1010D6C6 fmul st, st(5)
.text:1010D6C8 fld [esp+94h+var_6C]
.text:1010D6CC fmul [esp+94h+var_48]
.text:1010D6D0 faddp st(1), st
.text:1010D6D2 fld [esp+94h+var_70]
.text:1010D6D6 fld st
.text:1010D6D8 fmul st, st(6)
.text:1010D6DA faddp st(2), st
.text:1010D6DC fxch st(1)
.text:1010D6DE fchs
.text:1010D6E0 fstp [esp+94h+var_34]
.text:1010D6E4 fld [esp+94h+var_74]
.text:1010D6E8 fmul st, st(4)
.text:1010D6EA fld [esp+94h+var_6C]
.text:1010D6EE fmul st, st(3)
.text:1010D6F0 faddp st(1), st
.text:1010D6F2 fld st(3)
.text:1010D6F4 fmulp st(2), st
.text:1010D6F6 faddp st(1), st
.text:1010D6F8 fchs
.text:1010D6FA fstp [esp+94h+var_90]
.text:1010D6FE fld st(4)
.text:1010D700 fmul st, st(5)
.text:1010D702 fld [esp+94h+var_48]
.text:1010D706 fld st
.text:1010D708 fmul st, st(1)
.text:1010D70A faddp st(2), st
.text:1010D70C fld st(5)
.text:1010D70E fmul st, st(6)
.text:1010D710 faddp st(2), st
.text:1010D712 fxch st(1)
.text:1010D714 fstp [esp+94h+var_20]
.text:1010D718 fld st(3)
.text:1010D71A fmul st, st(6)
.text:1010D71C fld st(2)
.text:1010D71E fmulp st(2), st
.text:1010D720 faddp st(1), st
.text:1010D722 fld st(2)
.text:1010D724 fmul st, st(5)
.text:1010D726 faddp st(1), st
.text:1010D728 fstp [esp+94h+var_1C]
.text:1010D72C fld st(2)
.text:1010D72E fmul st, st(3)
.text:1010D730 fld st(2)
.text:1010D732 fmul st, st(3)
.text:1010D734 faddp st(1), st
.text:1010D736 fld st(1)
.text:1010D738 fmul st, st(2)
.text:1010D73A faddp st(1), st
.text:1010D73C fstp [esp+94h+var_24]
.text:1010D740 fld [esp+94h+var_60]
.text:1010D744 fmul [esp+94h+var_6C]
.text:1010D748 fld [esp+94h+var_64]
.text:1010D74C fmul [esp+94h+var_70]
.text:1010D750 faddp st(1), st
.text:1010D752 fld [esp+94h+var_68]
.text:1010D756 fmul [esp+94h+var_74]
.text:1010D75A faddp st(1), st
.text:1010D75C fchs
.text:1010D75E fstp [esp+94h+var_C]
.text:1010D765 fld [esp+94h+var_68]
.text:1010D769 fmul st, st(5)
.text:1010D76B fld [esp+94h+var_60]
.text:1010D76F fmul [esp+94h+var_48]
.text:1010D773 faddp st(1), st
.text:1010D775 fld [esp+94h+var_64]
.text:1010D779 fld st
.text:1010D77B fmul st, st(6)
.text:1010D77D faddp st(2), st
.text:1010D77F fxch st(1)
.text:1010D781 fstp [esp+94h+var_10]
.text:1010D788 fld [esp+94h+var_60]
.text:1010D78C fmul st, st(2)
.text:1010D78E fld st(3)
.text:1010D790 fmulp st(2), st
.text:1010D792 faddp st(1), st
.text:1010D794 fld [esp+94h+var_68]
.text:1010D798 fmul st, st(4)
.text:1010D79A faddp st(1), st
.text:1010D79C fstp [esp+94h+var_8]
.text:1010D7A3 fld [esp+94h+var_24]
.text:1010D7A7 fmul [esp+94h+var_20]
.text:1010D7AB fld [esp+94h+var_1C]
.text:1010D7AF fld st
.text:1010D7B1 fmul st, st(1)
.text:1010D7B3 fsubp st(2), st
.text:1010D7B5 fxch st(1)
.text:1010D7B7 fstp [esp+94h+var_30]
.text:1010D7BB fmul [esp+94h+var_90]
.text:1010D7BF fld [esp+94h+var_24]
.text:1010D7C3 fld [esp+94h+var_34]
.text:1010D7C7 fmul st(1), st
.text:1010D7C9 fxch st(2)
.text:1010D7CB fsubrp st(1), st
.text:1010D7CD fstp [esp+94h+var_44]
.text:1010D7D1 fmul [esp+94h+var_1C]
.text:1010D7D5 fld [esp+94h+var_20]
.text:1010D7D9 fmul [esp+94h+var_90]
.text:1010D7DD fsubp st(1), st
.text:1010D7DF fstp [esp+94h+var_18]
.text:1010D7E3 fld st
.text:1010D7E5 fmul st, st(4)
.text:1010D7E7 fld st(2)
.text:1010D7E9 fld [esp+94h+var_48]
.text:1010D7ED fmul st(1), st
.text:1010D7EF fxch st(2)
.text:1010D7F1 fsubrp st(1), st
.text:1010D7F3 fstp [esp+94h+var_8C]
.text:1010D7F7 fmul st, st(3)
.text:1010D7F9 fld st(5)
.text:1010D7FB fmul st, st(2)
.text:1010D7FD fsubp st(1), st
.text:1010D7FF fld st(2)
.text:1010D801 fmul st, st(6)
.text:1010D803 fld st(4)
.text:1010D805 fmulp st(6), st
.text:1010D807 fsubrp st(5), st
.text:1010D809 fld st(4)
.text:1010D80B fmul [esp+94h+var_6C]
.text:1010D80F fld st(1)
.text:1010D811 fmul [esp+94h+var_70]
.text:1010D815 faddp st(1), st
.text:1010D817 fld [esp+94h+var_8C]
.text:1010D81B fmul [esp+94h+var_74]
.text:1010D81F faddp st(1), st
.text:1010D821 fmul st, st
.text:1010D823 fld st(5)
.text:1010D825 fmulp st(6), st
.text:1010D827 fld st(1)
.text:1010D829 fmulp st(2), st
.text:1010D82B fxch st(5)
.text:1010D82D faddp st(1), st
.text:1010D82F fld [esp+94h+var_8C]
.text:1010D833 fmul st, st
.text:1010D835 faddp st(1), st
.text:1010D837 fmul [esp+94h+var_2C]
.text:1010D83B fmul ds:dbl_10202488
.text:1010D841 fcomp st(4)
.text:1010D843 fnstsw ax
.text:1010D845 fstp st(3)
.text:1010D847 test ah, 41h
.text:1010D84A jp loc_1010E4DA
.text:1010D850 fld [esp+94h+var_90]
.text:1010D854 fld [esp+94h+var_34]
.text:1010D858 fmul st(1), st
.text:1010D85A fld [esp+94h+var_1C]
.text:1010D85E fld [esp+94h+var_28]
.text:1010D862 fmul st(1), st
.text:1010D864 fxch st(3)
.text:1010D866 fsubrp st(1), st
.text:1010D868 fstp [esp+94h+var_2C]
.text:1010D86C fld [esp+94h+var_18]
.text:1010D870 fmul [esp+94h+var_90]
.text:1010D874 fld [esp+94h+var_44]
.text:1010D878 fmul st, st(2)
.text:1010D87A faddp st(1), st
.text:1010D87C fld [esp+94h+var_30]
.text:1010D880 fmulp st(3), st
.text:1010D882 faddp st(2), st
.text:1010D884 fld1
.text:1010D886 fdivrp st(2), st
.text:1010D888 fld st(1)
.text:1010D88A fmul [esp+94h+var_C]
.text:1010D891 fchs
.text:1010D893 fstp [esp+94h+var_34]
.text:1010D897 fld st(1)
.text:1010D899 fmul [esp+94h+var_10]
.text:1010D8A0 fchs
.text:1010D8A2 fst [esp+94h+var_4]
.text:1010D8A9 fxch st(2)
.text:1010D8AB fmul [esp+94h+var_8]
.text:1010D8B2 fchs
.text:1010D8B4 fst [esp+94h+var_14]
.text:1010D8BB fmul [esp+94h+var_18]
.text:1010D8BF fxch st(2)
.text:1010D8C1 fmul [esp+94h+var_44]
.text:1010D8C5 faddp st(2), st
.text:1010D8C7 fld [esp+94h+var_34]
.text:1010D8CB fmul [esp+94h+var_30]
.text:1010D8CF faddp st(2), st
.text:1010D8D1 fxch st(1)
.text:1010D8D3 fstp [esp+94h+var_30]
.text:1010D8D7 fld [esp+94h+var_24]
.text:1010D8DB fmul [esp+94h+var_28]
.text:1010D8DF fld [esp+94h+var_90]
.text:1010D8E3 fmul st, st
.text:1010D8E5 fsubp st(1), st
.text:1010D8E7 fmul [esp+94h+var_4]
.text:1010D8EE fld [esp+94h+var_14]
.text:1010D8F5 fmul [esp+94h+var_2C]
.text:1010D8F9 faddp st(1), st
.text:1010D8FB fld [esp+94h+var_34]
.text:1010D8FF fmul [esp+94h+var_44]
.text:1010D903 faddp st(1), st
.text:1010D905 fstp [esp+94h+var_44]
.text:1010D909 fld [esp+94h+var_20]
.text:1010D90D fmul [esp+94h+var_28]
.text:1010D911 fld st(1)
.text:1010D913 fmul st, st(2)
.text:1010D915 fsubp st(1), st
.text:1010D917 fmul [esp+94h+var_14]
.text:1010D91E fld [esp+94h+var_4]
.text:1010D925 fmul [esp+94h+var_2C]
.text:1010D929 faddp st(1), st
.text:1010D92B fld [esp+94h+var_34]
.text:1010D92F fmul [esp+94h+var_18]
.text:1010D933 faddp st(1), st
.text:1010D935 fldz
.text:1010D937 fld [esp+94h+var_30]
.text:1010D93B fcom st(1)
.text:1010D93D fnstsw ax
.text:1010D93F fstp st(1)
.text:1010D941 test ah, 5
.text:1010D944 jp loc_1010DC6C
.text:1010D94A fstp st(2)
.text:1010D94C fstp st(1)
.text:1010D94E fld st
.text:1010D950 fld [esp+94h+var_44]
.text:1010D954 fadd st(1), st
.text:1010D956 fxch st(1)
.text:1010D958 fcomp ds:flt_102003C4
.text:1010D95E fnstsw ax
.text:1010D960 fldz
.text:1010D962 fcom st(1)
.text:1010D964 test ah, 41h
.text:1010D967 fnstsw ax
.text:1010D969 fstp st(1)
.text:1010D96B jp loc_1010DB10
.text:1010D971 test ah, 41h
.text:1010D974 jnz loc_1010DA86
.text:1010D97A mov ecx, [edi+4]
.text:1010D97D fstp st(5)
.text:1010D97F fcomp st(4)
.text:1010D981 mov [esp+94h+var_88], ecx
.text:1010D985 mov ecx, esi
.text:1010D987 fnstsw ax
.text:1010D989 fstp st(3)
.text:1010D98B test ah, 5
.text:1010D98E mov eax, [edi]
.text:1010D990 mov [esp+94h+var_8C], eax
.text:1010D994 fld [esp+94h+var_8C]
.text:1010D998 mov eax, [edi+8]
.text:1010D99B fld st
.text:1010D99D faddp st(2), st
.text:1010D99F mov [esp+94h+var_84], eax
.text:1010D9A3 fld [esp+94h+var_88]
.text:1010D9A7 fadd st(4), st
.text:1010D9A9 fld [esp+94h+var_84]
.text:1010D9AD fld st
.text:1010D9AF faddp st(5), st
.text:1010D9B1 fxch st(2)
.text:1010D9B3 jp loc_1010DA5A
.text:1010D9B9 fstp [esp+94h+var_68]
.text:1010D9BD lea eax, [esp+94h+var_68]
.text:1010D9C1 fstp [esp+94h+var_64]
.text:1010D9C5 fstp [esp+94h+var_60]
.text:1010D9C9 fstp [esp+94h+var_5C]
.text:1010D9CD fxch st(1)
.text:1010D9CF fstp [esp+94h+var_58]
.text:1010D9D3 fstp [esp+94h+var_54]
.text:1010D9D7 call sub_1010D150
.text:1010D9DC mov ecx, [edi]
.text:1010D9DE fstp [esp+94h+var_90]
.text:1010D9E2 mov eax, [edi+4]
.text:1010D9E5 mov [esp+94h+var_8C], ecx
.text:1010D9E9 fld [esp+94h+var_8C]
.text:1010D9ED fld [esp+94h+var_50]
.text:1010D9F1 mov ecx, [edi+8]
.text:1010D9F4 fadd st, st(1)
.text:1010D9F6 mov [esp+94h+var_88], eax
.text:1010D9FA fld [esp+94h+var_88]
.text:1010D9FE mov [esp+94h+var_84], ecx
.text:1010DA02 fld [esp+94h+var_4C]
.text:1010DA06 fadd st, st(1)
.text:1010DA08 fld [esp+94h+var_84]
.text:1010DA0C fld [esp+94h+var_48]
.text:1010DA10 fadd st, st(1)
.text:1010DA12 fxch st(5)
.text:1010DA14 fstp [esp+94h+var_8C]
.text:1010DA18 fxch st(2)
.text:1010DA1A fstp [esp+94h+var_88]
.text:1010DA1E fxch st(1)
.text:1010DA20 fstp [esp+94h+var_84]
.text:1010DA24 fxch st(1)
.text:1010DA26
Poslednja izmena: