Threads / Cores Etc.

Tom Griffin

Distinguished
Sep 29, 2009
15
0
18,560
This is going to be a read.....

First, with the advent of threading software whether using free threading, mutex, semaphores, or in the old days, file locks.

I am still wondering, I have so many flinking threads on my box right now, and with a new application that I am working on that does the thread thing; it simply can run about 23-35 threads at it's height of doing things.

But it scales WONDERFULLY with multiple cores, but not so much with hyper threading.

I am thinking the gist of it is I should get a new compiler from Intel and head back to the C++ days and use their 'parallel' compiler. That I think would optimize my threads in a parallel fashion to take advantage HT technology.

I dont even know if I should post this here instead of at Intel or Microsoft or NVidia.

Any input, argument, laughing, get a life (smirk) line would be appreciated.
 
Solution


you have a lot of years on me then, i am a 4th year student at Rochester Institute of Technology and right now i work part time for a consultant

though i spend a lot of time programming, especially right now (between school, work, personal projects) i don't have a whole lot of time

mindless728

Distinguished
Jul 15, 2008
130
0
18,660
well, the HT scaling might be because its not as powerful as an actual core, i would say anywhere from 15-30% for the HT as opposed to using a core

you could try using intel's compiler if they have some wonderful tools built in, though be warned, if this is an application that you will be releasing anybody with AMD will see some pretty bad performance

i prefer to use free threading when available as the only performance hit is in creating the thread or if you make too many, though if you have to use a lock, depending on the app i will use either a mutex or a spin lock (spin lock can be better in some ways)

EDIT: and i would never say get a life, programming is my life right now (school and work)
 

Tom Griffin

Distinguished
Sep 29, 2009
15
0
18,560
I would also agree with school and work; I am a 30 year veteran engineer with having to break the binding of procedural programming into this interesting advent.

Free threading rocks!
 

mindless728

Distinguished
Jul 15, 2008
130
0
18,660


you have a lot of years on me then, i am a 4th year student at Rochester Institute of Technology and right now i work part time for a consultant

though i spend a lot of time programming, especially right now (between school, work, personal projects) i don't have a whole lot of time
 
Solution

Tom Griffin

Distinguished
Sep 29, 2009
15
0
18,560
In the long run; it's going to be using a language that is mutable; where everyone talks to everything. Simply put transactional memory, transmutable variables etc. Thanks everyone for posting something I figured out from Intel, Microsoft, MIT, (shrugs) Wiki, and of all people nut jobs at Apple.