Next Generation Emulation banner

1 - 18 of 18 Posts

·
Registered
Joined
·
1,756 Posts
Discussion Starter #1
I just had this weird idea to incorporate a limited service external numeric data processor support into my plugin(s). I haven't given it too much thought, but I have some general ideas.

The external processor would be another computer connected with a serial cable or through a fast internet connection that will process small to medium mathmatical functions that the plugin requires to operate. In theory, this should make things faster, but I'd like to know if this is something that would be worth researching? Would anyone actually use something like this? It's an interesting idea for parallel processing, though :)


... BTW, I'm not going to be lazy with my code in the future. ;)
 

·
Registered
Joined
·
2,853 Posts
That's definitely interesting.... however, (forgive me for being the pessimist), have you looked into the overhead cost involved in doing this?
 

·
Registered
Joined
·
1,756 Posts
Discussion Starter #3 (Edited)
Originally posted by kairi00
That's definitely interesting.... however, (forgive me for being the pessimist), have you looked into the overhead cost involved in doing this?
There would be little overhead on the client side if there's no significant delay between the communication of the two computers.
 

·
Registered
Joined
·
2,853 Posts
That's an intriguing idea.... I, for one, would at least give it a shot if you release a version of it sometime in the future... I wouldn't mind helping as well :)

Now... if I may ask, what calculations do you intend to offload to the extra processor? and also, what sort of improvements are you expecting to see? sorry if I ask too many questions, I just find it interesting :p
 

·
Registered
Joined
·
1,756 Posts
Discussion Starter #5
Originally posted by kairi00
Now... if I may ask, what calculations do you intend to offload to the extra processor? and also, what sort of improvements are you expecting to see? sorry if I ask too many questions, I just find it interesting :p
Well, for example, a software renderer could have the external computer scan convert polygons and send the data back (small) so it can render the final image.

Another thing that could be done is to have the external computer do complex image filtration on small regions of an existing image, and while the external computer is doing that, the client could begin processing the next frame.

Something like that. :)
 

·
Registered
Joined
·
1,756 Posts
Discussion Starter #6 (Edited)
Also, for each scan conversion:

Triangle: Data to server: 12 bytes
Quad: Data to server: 16 bytes

Data back from server (assuming a full 640x480 conversion): 1920 bytes
 

·
Registered
Joined
·
1,756 Posts
Discussion Starter #8
You could also compress data based on the current settings:
PSX resolution: 320x240
Client resolution: 640x480

Triangle: Data to server: 9 bytes
Quad: Data to server: 12 bytes
 

·
Registered
Joined
·
1,756 Posts
Discussion Starter #9
Or this :eek:
PSX resolution: 256x240

Triangle: Data to server: 6 bytes
Quad: Data to server: 8 bytes
 

·
Registered
Joined
·
2,853 Posts
That's pretty good... definitely feasible in a LAN environment... looks quite possible on broadband as well :D I can already see myself bugging some of my friends... "Hey, can I borrow some of your CPU cycles tonight? I wanna play ePSXe.." hahaha :p
 

·
Registered
Joined
·
1,756 Posts
Discussion Starter #12
I'm going to start researching this UDP server thing next chance I get. It'd be fast too with effecient ASM code :)
 

·
Registered
Joined
·
1,247 Posts
Wouldn't the latency involved be prohibitive, even over the serial connection? And if there is a gain wouldn't it be small enough as to not be worth noticing? Not to mention the timing horrors. This is all based off my limited networking knowledge mind you, I haven't done any network programming at all. If it seems fun and good for you though go for it!! And if it does work good, I think I'd install it in the background on my roommate's pc and steal some of his cycles tee hee.
 

·
Registered
Joined
·
1,756 Posts
Discussion Starter #16 (Edited)
Originally posted by gerbilcannon
Wouldn't the latency involved be prohibitive, even over the serial connection? And if there is a gain wouldn't it be small enough as to not be worth noticing? Not to mention the timing horrors. This is all based off my limited networking knowledge mind you, I haven't done any network programming at all. If it seems fun and good for you though go for it!! And if it does work good, I think I'd install it in the background on my roommate's pc and steal some of his cycles tee hee.
This was mainly intended for lower end computers where performance is an issue. It is not recommended on any system that is experiencing perfect everything :)

If you had a GHz processor, then you'd probably not want to use something like this, because it'd probably end up making everything slower rather than faster! :)

Timing is also not an issue if you have the two computers connected directly by a cross over cable through their ethernet cards. There's very little latency with a 10Mbps data transfer rate :) Serial cable is a bit slower, but it's not as slow as things usually are with most modems.
 

·
Registered
Joined
·
2,441 Posts
sounds like it might be something fun to play with. among my suitemates, we have 2 celery laptops and 2 decent desktops. it would be very cool if we could set up a 4 way lan party using this along with something like cyberpad and get the games running decently on the laptops.
 

·
Registered
Joined
·
1,756 Posts
Discussion Starter #18
Originally posted by Bgnome
sounds like it might be something fun to play with. among my suitemates, we have 2 celery laptops and 2 decent desktops. it would be very cool if we could set up a 4 way lan party using this along with something like cyberpad and get the games running decently on the laptops.
:) I never thought of this, get a big wall and a projector to project a huge 4 split image onto :)
 
1 - 18 of 18 Posts
Top