Author Topic: SeaMonkey 2.42.9 CPU spiking  (Read 37875 times)

Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1354
  • Karma: +26/-0
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #30 on: December 26, 2018, 02:52:46 pm »
Hello Dave and others,

I'll upload the 7z as long as you're willing to share if others such as Ivan with AMD CPU's want to test, assuming it actually runs for you. I'd assume it does....

Yes, of course not a problem...let me take a stab at it and go from there. I am hoping that if it works here (no issues found, it it stable, etc) eventually (longer term perspective) we can host is somewhere where it's publicaly accessible...but in the meantime, I'm all in!

Will email you next...

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5078
  • Karma: +117/-1
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #31 on: December 30, 2018, 01:50:14 am »
If anyone is interested, I built and uploaded Firefox optimized for a Phenom II, https://bitbucket.org/dryeo/dry-comm-esr31/downloads/firefox-45.9.0.en-US.os2.PhenomII.zip. Note that this will crash on older CPU's and likely even newer Intel CPU's. The trp report will have this close to the top,
Code: [Select]
Exception C000001C - Illegal Instruction
and here crashes with
Code: [Select]
Failing Instruction
_________________________________________

 14DFFB3C  MOVZX  EBX, BL    (0fb6db)
 14DFFB3F  SHR    EDX, 0x10  (c1ea 10)
 14DFFB42  MOVZX  EDX, DL    (0fb6d2)
 14DFFB45  MOV    ECX, EDX   (89d1)
 14DFFB47 >POPCNT EDX, EDX   (f30fb8d2)
 14DFFB4B  NOT    ECX        (f7d1)
 14DFFB4D  AND    EAX, ECX   (21c8)
 14DFFB4F  AND    ECX, EBX   (21d9)

Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1354
  • Karma: +26/-0
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #32 on: December 30, 2018, 03:10:09 am »
Hi Everyone!

If anyone is interested, I built and uploaded Firefox optimized for a Phenom II...

For what it's worth, this release is working great here (Phenom II X6). I mentioned to Dave earlier that this maybe a bit of a mental "this is better" conclusion, but it does feel like FF is a tad faster / smoother / pages render faster, etc.

I'm sure that if the code optimizations do allow it to actually run faster, the differences are probably very minimal, however it is a welcome step in a better direction.

Thanks once again Dave for coming through with this!

OS4User

  • Sr. Member
  • ****
  • Posts: 406
  • Karma: +10/-0
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #33 on: December 30, 2018, 07:58:06 pm »
If anyone is interested, I built and uploaded Firefox optimized for a Phenom II,

Hi, Dave

Is it possible to build AVX version of FireFox ?


Dave Yeo

  • Hero Member
  • *****
  • Posts: 5078
  • Karma: +117/-1
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #34 on: December 30, 2018, 08:31:09 pm »
If anyone is interested, I built and uploaded Firefox optimized for a Phenom II,

Hi, Dave

Is it possible to build AVX version of FireFox ?

I could try. Can't test here though. What is the minimum target? ivybridge? haswell?

OS4User

  • Sr. Member
  • ****
  • Posts: 406
  • Karma: +10/-0
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #35 on: December 30, 2018, 09:09:26 pm »
If anyone is interested, I built and uploaded Firefox optimized for a Phenom II,

Hi, Dave

Is it possible to build AVX version of FireFox ?

I could try. Can't test here though. What is the minimum target? ivybridge? haswell?

AFAIK,  it is  Sandy Bridge and Bulldozer

David Graser

  • Hero Member
  • *****
  • Posts: 966
  • Karma: +108/-0
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #36 on: December 30, 2018, 10:16:14 pm »
Dave

I wanted to thank you for your tireless modifications and updates to the browsers.  Every update improves my browsing experience under ArcaOS.  I am not having to boot to Windows as much to use the browser for something. 

I continue to contribute to the Q5 project monthly because I realized this project is a must.  Having my daughter out of the house and married gives me a little more discretionary income.

A special thanks to all who continue to make using all versions of OS/2 a pleasant experience.

David

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5078
  • Karma: +117/-1
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #37 on: December 31, 2018, 04:39:17 am »
https://bitbucket.org/dryeo/dry-comm-esr31/downloads/firefox-45.9.0.en-US.os2.SandyBridge.zip
Crashes here right away with an illegal instruction, which I don't understand. Define Byte or put byte?
Code: [Select]

 Failing Instruction
__________________________________________________________

 000115EE  DB 0x66                      (66)
 000115EE  NOP                          (66 90)
 000115F0  CMP     BYTE [0x97310], 0x0  (803d 10730900 00)
 000115F7  MOV     EAX, [0x97290]       (a1 90720900)
 000115FC  JZ      0x11630              (74 32)
 000115FE >DB 0xc5                      (c5)
 000115FF  STC                          (f9)
 00011600  OUTSB                        (6e)

Probably doesn't use anymore AVX instructions then the default build but don't really know. Generally these builds probably result in minor speedups as most of the important parts, multimedia and the JavaScript JIT go by what the CPU supports and dynamically use the various intrinsics. . The SSE2 is different as there are a few functions that are compiled differently, as in different object files depending on the target.
For example, searching AVX on 45ESR, https://dxr.mozilla.org/mozilla-esr45/search?q=avx&redirect=false gives 2327 hits. There's also code in the JIT to manually apply AVX instructions byte by byte for the cases where the binutil's AS is too old.

OS4User

  • Sr. Member
  • ****
  • Posts: 406
  • Karma: +10/-0
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #38 on: December 31, 2018, 09:55:52 am »
https://bitbucket.org/dryeo/dry-comm-esr31/downloads/firefox-45.9.0.en-US.os2.SandyBridge.zip

Tnx a lot  -   we will test it.

Crashes here right away with an illegal instruction, which I don't understand. Define Byte or put byte?
Code: [Select]

 Failing Instruction
__________________________________________________________

 000115EE  DB 0x66                      (66)
 000115EE  NOP                          (66 90)
 000115F0  CMP     BYTE [0x97310], 0x0  (803d 10730900 00)
 000115F7  MOV     EAX, [0x97290]       (a1 90720900)
 000115FC  JZ      0x11630              (74 32)
 000115FE >DB 0xc5                      (c5)
 000115FF  STC                          (f9)
 00011600  OUTSB                        (6e)

probably,  AVX instruction is a bit earlier  and  nonAVX CPU decoded wrongly this pies of code.

At the same time, I know  about positive result in building code for AVX target.

OS4User

  • Sr. Member
  • ****
  • Posts: 406
  • Karma: +10/-0
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #39 on: December 31, 2018, 08:54:39 pm »
https://bitbucket.org/dryeo/dry-comm-esr31/downloads/firefox-45.9.0.en-US.os2.SandyBridge.zip

It does work on AVX machine :) .
The comparison with nonAVX ver will be done after New Year holiday.
Dave, thank you very much one more time :)

Daniel

  • Guest
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #40 on: January 01, 2019, 01:06:38 am »
And another thanks to Dave. I tried the Phenom II version of Firefox. It fixed some problems and illuminated others. So I then updated Uniaud. Now I had very low sound on Youtube videos but they played, and at the right speed.

Turned out the front channels were being set to 0 volume. Added a command file to the startup folder with the line:

unimix -id1 -cnt0 -val24 -cnt1 -val24

You now have a happy camper. The only thing that doesn't work is the volume slider in Youtube. This is with eCS 2.2

Thanks again.

Lars

  • Hero Member
  • *****
  • Posts: 1367
  • Karma: +70/-0
    • View Profile
Re: SeaMonkey 2.42.9 CPU spiking
« Reply #41 on: January 01, 2019, 03:20:06 pm »
https://bitbucket.org/dryeo/dry-comm-esr31/downloads/firefox-45.9.0.en-US.os2.SandyBridge.zip

It does work on AVX machine :) .
The comparison with nonAVX ver will be done after New Year holiday.
Dave, thank you very much one more time :)

Looking at the Intel spec:
"C5,"F9","6E" bytes are likely the beginning bytes of the "VMOVD" AVX instruction (either "C5" or "C4" start an AVX instruction in general)

So yes, that would be valid AVX code.

Lars