Dropping old processor support

Post comments about Shareaza code and discuss with other developers.
Forum rules
Home | Wiki | Rules

Dropping old processor support

Postby raspopov » 21 Nov 2009 14:59

What do you think about dropping support of old non-SSE processors i.e. Intel Pentium Pro, Pentium II, AMD Athlon (without XP)? So we would use fast float-point routines and SSE-optimization.
User avatar
raspopov
Project Admin
 
Posts: 945
Joined: 13 Jun 2009 12:30

Re: Dropping old processor support

Postby diztrancer » 21 Nov 2009 15:12

Goodbay my Celeron 633Mgz :(

Use both optimised and not-oprimised routines ?

And is there already SHA1 calulating in x64 assembler ?
User avatar
diztrancer
 
Posts: 222
Joined: 13 Jun 2009 15:41
Location: Ukraine

Re: Dropping old processor support

Postby old_death » 21 Nov 2009 15:22

Not a bad idea, but only if we can present a bug-free version of Shareaza for those still using these processors. This means +1 from my side after at least v2.5.1.0 has been released and there are no more error reports flooding your SF mailbox. ;)
User avatar
old_death
 
Posts: 1950
Joined: 13 Jun 2009 16:19

Re: Dropping old processor support

Postby ocexyz » 21 Nov 2009 15:33

Would be good to know how many users use this kind of hardware?
User avatar
ocexyz
 
Posts: 624
Joined: 15 Jun 2009 13:09

Re: Dropping old processor support

Postby raspopov » 21 Nov 2009 16:09

User avatar
raspopov
Project Admin
 
Posts: 945
Joined: 13 Jun 2009 12:30

Re: Dropping old processor support

Postby diztrancer » 21 Nov 2009 16:20

AMD Athlon also support this.
But anyway - non-MMX must be dropped.
User avatar
diztrancer
 
Posts: 222
Joined: 13 Jun 2009 15:41
Location: Ukraine

Re: Dropping old processor support

Postby raspopov » 21 Nov 2009 16:33

User avatar
raspopov
Project Admin
 
Posts: 945
Joined: 13 Jun 2009 12:30

Re: Dropping old processor support

Postby kevogod » 21 Nov 2009 17:04

How much would Shareaza really benefit from this though?
kevogod
 
Posts: 278
Joined: 13 Jun 2009 16:13

Re: Dropping old processor support

Postby ocexyz » 21 Nov 2009 17:09

To estimate consquences should be known what number (or %) of users use such harware and what number (or %) of files are shared by those who will be excluded. If 5-10% would be lost then perhaps this would be cost of progress, but if 5-10% only would stay in network in the effect of this then it would be ignoring users.
W/o info this it is not decision making but just taking risk counting on some advatages/benefits of such a decision.
And how other projects of this kind do?
User avatar
ocexyz
 
Posts: 624
Joined: 15 Jun 2009 13:09

Re: Dropping old processor support

Postby ocexyz » 21 Nov 2009 17:42

User avatar
ocexyz
 
Posts: 624
Joined: 15 Jun 2009 13:09

Re: Dropping old processor support

Postby mojo85 » 22 Nov 2009 05:59

No point in doing this. Those who need a system optimized for their PC can freely compile it themselves ... the complications arising from someone making a post and us doing all sorts of tests to find out they couldn't install because of a processor is not worth the time. In terms of cutting edge speed optimizations it must be the core code the gives the gains not the compiled code that would require a system specific setup.

No added benefit.
mojo85
 
Posts: 115
Joined: 27 Sep 2009 05:35

Re: Dropping old processor support

Postby raspopov » 22 Nov 2009 10:14

Yeah, but there are no old processors left in the world. So no point in not doing that.
User avatar
raspopov
Project Admin
 
Posts: 945
Joined: 13 Jun 2009 12:30

Re: Dropping old processor support

Postby old_death » 22 Nov 2009 10:51

Well, that's not true, there are still some left. But anything prior to Pentium III or a comparable AMD system could not run Shareaza anyway as it simply needs too much CPU res.
User avatar
old_death
 
Posts: 1950
Joined: 13 Jun 2009 16:19

Re: Dropping old processor support

Postby ocexyz » 22 Nov 2009 12:56

User avatar
ocexyz
 
Posts: 624
Joined: 15 Jun 2009 13:09

Re: Dropping old processor support

Postby ocexyz » 22 Nov 2009 13:15

User avatar
ocexyz
 
Posts: 624
Joined: 15 Jun 2009 13:09

Re: Dropping old processor support

Postby old_death » 22 Nov 2009 16:23

User avatar
old_death
 
Posts: 1950
Joined: 13 Jun 2009 16:19

Re: Dropping old processor support

Postby ocexyz » 23 Nov 2009 00:57

Twice bigger installer does not disturb. It can be applied to 64 I think w/o problems even now, but not w/o to 32 IMHO.
This is also question of prices of new staff and how quick older staff will die physically. Nowadays hardware is really less durable I think, but older just more.
User avatar
ocexyz
 
Posts: 624
Joined: 15 Jun 2009 13:09

Re: Dropping old processor support

Postby ailurophobe » 24 Nov 2009 19:45

I think it would be good to have SSE optimized hashing. The correct way to do this would probably be to have an object that does hashing with a virtual function for hashing. Then on Shareaza start you would initialize this to the correct sub-class of the abstract hashing base class that implements the virtual function. Like "Hashing_with_x86", "Hashing_with_MMX", "Hashing_with_SSE","Hashing_with_SSE2", and so on. This would be more work, but it would avoid all compatibility problems. You could have as many optimized versions of the hashing functions as you wanted without dropping support for older hardware for the cost of some initialization logic and a virtual function redirect.

But pre-SSE CPUs are probably already lost to us since we dropped Win 9X/ME support, so doing a direct replace is fine with me.
ailurophobe
 
Posts: 709
Joined: 11 Nov 2009 05:25

Re: Dropping old processor support

Postby old_death » 03 Dec 2009 10:05

User avatar
old_death
 
Posts: 1950
Joined: 13 Jun 2009 16:19

Re: Dropping old processor support

Postby raspopov » 03 Dec 2009 18:10

SSE/SSE2 supported only for 32-bit builds.

BTW I mistakenly commited SSE-path... so current 2.5.1.0 is SSE-enabled... :oops:
User avatar
raspopov
Project Admin
 
Posts: 945
Joined: 13 Jun 2009 12:30

Re: Dropping old processor support

Postby punkmaister » 10 Dec 2009 21:05

Is the Intel Celeron E1200 @ 1.60 GH fast and compatible enough?
:?:
punkmaister
 
Posts: 105
Joined: 10 Aug 2009 04:09

Re: Dropping old processor support

Postby brov » 10 Dec 2009 22:01

IIRC yes it is.
brov
 
Posts: 87
Joined: 05 Jul 2009 12:15


Re: Dropping old processor support

Postby ailurophobe » 15 Dec 2009 22:58

How about SSE for 32bit and SSE 2 for 64bit? If raspopov already accidentally committed SSE and nobody noticed for a long time, seems like there is no reason not to.
ailurophobe
 
Posts: 709
Joined: 11 Nov 2009 05:25

Re: Dropping old processor support

Postby rolandas » 18 Dec 2009 20:08

IMO, it should be dropped. Nowadays, you can not even watch youtube clips without SSE, Adobe dropped the support from Flash Players (actually, it works but I can not call it as functional), Microsodt dropped it's support too for the SilverLight technology. If Shareaza was a portable application, which means allowing it install into devices, then there would be problems.
Can you guys give any examples, when Shareaza is run on such old PC's? Everyone even can buy a processor with SSE from ebay just for $15.
rolandas
 
Posts: 6
Joined: 13 Jun 2009 14:01

Re: Dropping old processor support

Postby mojo85 » 18 Dec 2009 20:39

Hey rolandas nice to see you, this has been done now ... but duly noted and I concede my original hesitation.
mojo85
 
Posts: 115
Joined: 27 Sep 2009 05:35

Re: Dropping old processor support

Postby ocexyz » 18 Dec 2009 21:42

User avatar
ocexyz
 
Posts: 624
Joined: 15 Jun 2009 13:09

Re: Dropping old processor support

Postby rolandas » 18 Dec 2009 21:56

rolandas
 
Posts: 6
Joined: 13 Jun 2009 14:01

Re: Dropping old processor support

Postby old_death » 27 Jan 2010 14:58

User avatar
old_death
 
Posts: 1950
Joined: 13 Jun 2009 16:19

Re: Dropping old processor support

Postby bosanek » 30 Jan 2010 14:28

Read this topic to see an example of a user who got affected by the SSE revolution:
viewtopic.php?f=7&t=520&p=3419#p3419

And it wasn't only me, but also at least five of my friends.
bosanek
 
Posts: 7
Joined: 27 Jan 2010 11:34

Re: Dropping old processor support

Postby cyko_01 » 06 Feb 2010 17:39

I noticed that rev.8461 enables SSE2 correct? If I am not mistaken that would also eliminate all PIII processors which I think is a big mistake since it is very plausable that they are still in use and running an appropriate OS for shareaza (perhaps as a P2P sharing server). Raspopov, please explain yourself.
User avatar
cyko_01
 
Posts: 938
Joined: 13 Jun 2009 15:51

Re: Dropping old processor support

Postby raspopov » 06 Feb 2010 17:54

After two month of unexpected SSE1 testing I prefer to release two versions of Shareaza: 1) Blend version (default at download page) for all processors; 2) Optional SSE2-optimized version for Intel Pentium 4, AMD Athlon 64 and above processors.

P.S. Daily builds will be blend also.
User avatar
raspopov
Project Admin
 
Posts: 945
Joined: 13 Jun 2009 12:30

Re: Dropping old processor support

Postby old_death » 06 Feb 2010 18:01

User avatar
old_death
 
Posts: 1950
Joined: 13 Jun 2009 16:19

Re: Dropping old processor support

Postby raspopov » 06 Feb 2010 18:18

MS Visual Studio 2008 produces too slow 64-bit code for Hash library, so we can try to compile it with Intel C++ Compiler (I have no license for it) or preferred way is to manually convert 32-bit assembler routines to 64-bit.
User avatar
raspopov
Project Admin
 
Posts: 945
Joined: 13 Jun 2009 12:30

Re: Dropping old processor support

Postby old_death » 06 Feb 2010 22:46

User avatar
old_death
 
Posts: 1950
Joined: 13 Jun 2009 16:19

Re: Dropping old processor support

Postby ailurophobe » 07 Feb 2010 01:47

If someone will compile the 64 bit hash functions with Intel compiler they should also compile versions for different SSE versions in 32 bit and then add wrapper code so Shareaza maps hashing to the correct version. I am curious if it makes a difference in performance.
ailurophobe
 
Posts: 709
Joined: 11 Nov 2009 05:25

Re: Dropping old processor support

Postby cyko_01 » 07 Feb 2010 01:57

User avatar
cyko_01
 
Posts: 938
Joined: 13 Jun 2009 15:51

Re: Dropping old processor support

Postby kevogod » 07 Feb 2010 03:14

I doubt even using the Intel compiler for 64-bit HashLib would result in better performance than the hand optimized 32-bit assembly code.
kevogod
 
Posts: 278
Joined: 13 Jun 2009 16:13

Re: Dropping old processor support

Postby raspopov » 07 Feb 2010 07:33

That why I long time ago added HashTest utility, use it to compare performance with various compilation options.
User avatar
raspopov
Project Admin
 
Posts: 945
Joined: 13 Jun 2009 12:30

Re: Dropping old processor support

Postby ailurophobe » 07 Feb 2010 12:52

So you have numbers on how MMX, SSE, and SSE2 versions compare? I am just curious, so a rough estimate would be more than sufficient.
ailurophobe
 
Posts: 709
Joined: 11 Nov 2009 05:25

Next

Return to Development Discussion

Who is online

Users browsing this forum: No registered users and 1 guest