Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Geek Culture / make dbp multythredid?

Author
Message
hessiess
17
Years of Service
User Offline
Joined: 30th Mar 2007
Location: pc!
Posted: 11th May 2007 19:02
becose multycore prosessors are bog standard, why not upgrade dbp to alow multy threading?

then you would be able to take full advantage of new prosesors.

learn blender, you will never regret it.
Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 11th May 2007 19:12
Multi-threading would have benefited TGC from DBP's origin, really. It would be nice to be able to have something go on as the resources are being loaded into memory, for example.

And dude, seriously, do you use Firefox? It has a built-in spell checker.

BatVink
Moderator
21
Years of Service
User Offline
Joined: 4th Apr 2003
Location: Gods own County, UK
Posted: 11th May 2007 19:17
STYX introduces multi-threading
PhysX is also multi-threaded, as is DarkAI, I believe.

Benjamin
21
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 11th May 2007 19:22 Edited at: 11th May 2007 19:39
There's far more to multi-threading than just loading stuff in the background, like using a thread to perform physics calculations while the other core is rendering, which of course gives you a lot more power. There are certain synchronization issues when using multiple threads, so the entire program itself would have already had to been set up for it in the beginning.

Quote: "PhysX is also multi-threaded, as is DarkAI, I believe."

I doubt it does it in a way that takes advantage of multiple cores/processors.

In order to properly implement multi-threading in a way that it takes advantage of multiple cores, you have to make sure the separate operations they perform can be performed asynchronously - because if one operation has to wait for the other to finish, you are gaining nothing but context switching overhead. In terms of a game, the most performance costly thing is the rendering itself, so one needs to try to asynchronously perform the second most costly operation while this is happening.

For example if you want to calculate physics during rendering, the physics thread needs to keep a local copy of the object data that it can modify without messing up the render thread's data. When the physics thread has performed its operation, it can set a signal to tell the main thread (render thread) that it can copy the new data into the main copy of the object data. Thus, when the rendering is finished, the main thread copies this data, and then performs the next loop.

Tempest (DBP/DBCe)
Multisync V1 (DBP/DBCe)
Seppuku Arts
Moderator
20
Years of Service
User Offline
Joined: 18th Aug 2004
Location: Cambridgeshire, England
Posted: 11th May 2007 19:23
Quote: "And dude, seriously, do you use Firefox? It has a built-in spell checker."


It may be an idea, I know you're dyslexic so it should make life easier for you.

As for multithread DBP, I'm sure this may be introduced in the new Dark Basic they'll be releasing for vista, so I doubt they'll give DBP the multithreading ability, but as BatVink said, STYX allows you to use it

Look behind you a threeheaded monkey!
the_winch
21
Years of Service
User Offline
Joined: 1st Feb 2003
Location: Oxford, UK
Posted: 11th May 2007 19:56
The built in firefox spell checker is pretty useless as far as spell checkers go. For "prosesors" is suggests "proses ors". Not exactly helpful if prosesors was your best attempt.

With all the silly little bugs people are still finding would multi threading really have been a good idea? Not only would it have made dbpro even more complex but multi threaded programs are not known for being easy to debug.

By way of demonstration, he emitted a batlike squeak that was indeed bothersome.
hessiess
17
Years of Service
User Offline
Joined: 30th Mar 2007
Location: pc!
Posted: 11th May 2007 20:10
i do use firefox, it dosent recognise most of my spieling errors.
i don't use dbp, i was just wandering why there's no support for multythreding. i will never buy a computer with vista. witch is why im learning Linux. multythreding would defanatly be a advantage for seadome, witch im helping make the models.

learn blender, you will never regret it.
BatVink
Moderator
21
Years of Service
User Offline
Joined: 4th Apr 2003
Location: Gods own County, UK
Posted: 12th May 2007 00:26
Quote: "I doubt it does it in a way that takes advantage of multiple cores/processors"


Dak Physics does. You call the Physics update with a particular flag, then SYNC the display. Whilst the screen is being drawn, a dual-core processor or Physics processing unit gets on with the next set of iterations. You then call the update with a second flag and it updates the user-accessible physics data. Take a look at Lee's newsletter article about flogging two donkeys.

Benjamin
21
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 12th May 2007 00:30
Ah, cool.

Tempest (DBP/DBCe)
Multisync V1 (DBP/DBCe)
heartbone
22
Years of Service
User Offline
Joined: 9th Nov 2002
Location:
Posted: 12th May 2007 17:58
Ths s pttng the crt bfr th hrs.
Whn th lngg gts stblzd nd dfnd thn ths wld b gd prjct.

I'm unique, just like everybody else.
Dazzag
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: Cyprus
Posted: 12th May 2007 18:01
Quote: "it dosent recognise most of my spieling errors"
Well it would pick up that obvious one (and probably the other)..... I'm guessing some things it doesn't pick up because the "words" are so amazingly different to actual words. I'm not being amusing there either...

Cheers

I am 99% probably lying in bed right now... so don't blame me for crappy typing
Current fave quote : "She was like a candle in the wind.... unreliable...."
Randomness 128
17
Years of Service
User Offline
Joined: 13th Feb 2007
Location:
Posted: 12th May 2007 19:35
Quote: "Ths s pttng the crt bfr th hrs.
Whn th lngg gts stblzd nd dfnd thn ths wld b gd prjct."


? ? ? ? ?

LD52
18
Years of Service
User Offline
Joined: 31st Aug 2006
Location: Internet
Posted: 14th May 2007 06:22
Quote: "Ths s pttng the crt bfr th hrs.
Whn th lngg gts stblzd nd dfnd thn ths wld b gd prjct"


=

This is putting the ___ before the _____.
When the language gets (Stabilized) and _______ then this would be good project.

well im not sure what goes in the blanks and i guess stblzd is stabilized but not sure.
Thats my attempt at what he tried to say, i could be wrong.
zenassem
21
Years of Service
User Offline
Joined: 10th Mar 2003
Location: Long Island, NY
Posted: 14th May 2007 07:13 Edited at: 14th May 2007 07:14
This is putting the cart before the horse. (meaning out of order, or backwards)
When the language gets stabilized and defined then this would be a good project

LD52
18
Years of Service
User Offline
Joined: 31st Aug 2006
Location: Internet
Posted: 14th May 2007 07:41
Nice zenassem. Oh and it was stabilized. i thought the dfnd was defend but that didnt make any sense, defined is the better word. Good job
Kentaree
22
Years of Service
User Offline
Joined: 5th Oct 2002
Location: Clonmel, Ireland
Posted: 14th May 2007 14:23
I'd have to be totally honest and say that multi-threading might be too advanced for the main demographic TGC is targeting for with DBP. Problems like race conditions, synchronizing and deadlocks might be going over the heads of too many people, and would definitely not help in keeping the language simple.

David R
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: 3.14
Posted: 15th May 2007 00:25
I love threads. Mainly the fact that the deadlock they cause is just... infinite. I love it. You can cause your app to infinitely hang until the sun explodes and it wouldn't know the difference


09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c0
Jess T
Retired Moderator
21
Years of Service
User Offline
Joined: 20th Sep 2003
Location: Over There... Kablam!
Posted: 15th May 2007 06:26
I'm surprised noone's mentioned IanM's Matrix1Async DLL yet (Third Party Commands >> My DLLs and their source >> Matrix1Async)...

Quote: "This DLL enables you to queue up file-loads in background, where they can be completed while your program is doing something else."


Nintendo DS & Dominos :: DS Dominos
http://jt0.org

Login to post a reply

Server time is: 2024-11-18 15:51:18
Your offset time is: 2024-11-18 15:51:18