DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Can DIAdem 2012 use multiple processors on Quad Core CPU?

Hi,

  I am running scripts in DIAdem 2012 which take upwards of 10 minutes to complete.  However, I notice my CPU usage never goes above 15% during this time.  My understanding is that that generally suggests the software is not 64-bit compatible and therefore not taking advantage of the other cores (I'm on a quad-core i7).  I also have 12gb ram and that is not being heavily taxed by DIAdem either. 

 

  Anybody know how I can squeeze some extra juice out of my computer to help DIAdem run faster?  Thanks!

0 Kudos
Message 1 of 9
(6,333 Views)

Hi GT_Mark,

 

It does not look like DIAdem currently is capable of using multiple processors. I found a similar discussion for DIAdem 2010 that Brad Turpin, the PSE for DIAdem, responded to

 

http://forums.ni.com/t5/DIAdem/How-do-I-get-Diadem-to-take-advantage-of-multi-core-processor/m-p/143...

 

Checking the release notes for 2012 I did not see anything mentioned for multiple cores, which would be a pretty big feature release if it happened.

 

Squeezing power would really fall down to script optemization, when calls are made, how loops are executed etc.

 

Regards,

 

James W.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 9
(6,319 Views)

Hello Mark,

 

Multi-core support only makes sense for very few operations in DIAdem (i.e. Large amounts of data being sent through an FFT routine) and is currently not supported. Also, 64-bit only makes a difference when working with very large data files.

 

That said, there are ways to improve processing speed in DIAdem without using extra cores or 64-bit versions of software. My best suggestion is to get in touch with our senior Product Support Engineer (Dr. Brad Turpin) and combing through your Script(s) to see where there is potential to improve processing speeds by optimizing the Script(s). I'm not implying that your Script(s) are badly written, I just know from experience that changing a few things in the Script(s) has lead to reduced processing times by using optimized functions in DIAdem that you might not be aware of.

 

Dr. Turpin can be reached at this email address: brad DOT turpin @ ni DOT com

 

Please reference this forum thread when you contact him.

 

Best regards,

 

  Otmar

Otmar D. Foehner
0 Kudos
Message 3 of 9
(6,308 Views)

Thanks for the replies!  I will go through my scripts and attempt to optimize them, mostly by trying to condense loops, etc.  If I still cannot get them running at a reasonable speed I'll contact Brad -- he trained my team on DIAdem and we've been in touch a bit since then regarding DIAdem.

 

Thanks again!

0 Kudos
Message 4 of 9
(6,297 Views)

Hi GT_Mark,

 

The first thing to look for are tight VBScript loops over channel values where each loop iteration sets or reads an individual value from a channel.  You can almost always handle that sort of thing without the loop and all those VBScript calls.  VBScript is interpreted, not compiled, so you don't want to run too many VBScript commands.  This is usually only a problem in loops-- a general rule of thumb is that you won't notice the amount of time it takes the VBScript interpreter to parse the first 100,000 VBScript lines, but somewhere after that the VBScript interpreter can slow you down a bunch.  Nested loops over all the values of multiple channels is usually where this happens.

 

Brad Turpin

DIAdem Product Support Engineer

National Instruments

0 Kudos
Message 5 of 9
(6,251 Views)

Hi Brad,

 

I didn't find information about multicore support in Diadem 2018 and older versions.

 

Can we conclude that the performance of Diadem will be better with a 3 GHz 2 cores CPU than with a 1,5 GHz 8 cores CPU ?

 

Thanks

Yohann L.
0 Kudos
Message 6 of 9
(2,937 Views)

Hi Yohann L.

 

I would suggest that you look into the Worker object, it is supported in DIAdem 2017 and 2018. 

 

It will allow you to do parallel processing. 

2017 can use as many cores has you have

2018 can use up to 5.

 

This can give very good use of all cores on a machine.

 

Paul

 

 

Message 7 of 9
(2,930 Views)

Thank you for this good information Pesmith8

 

At the moment I have an existing application that i need to "port" to a new computer but i don't want to redevelop the scripts. I would like to have advice for the choice of the CPU.

Yohann L.
0 Kudos
Message 8 of 9
(2,923 Views)

Hi Yohann L.

 

Well if you can not use Worker object,  then the machine with the highest clock rate will give the best performance.

 

As far as number of cores, for this machine. That would depend on what else you are running on this machine.  My personal preference would be a i7 or Xeon CPU with 4 main cores and 4 hyperthreaded.  These are just good CPU's for general use.   I also like to have 16 GB of  RAM and SSD Hard drives, but your version of DIAdem might be the 32 bit version. This will not be able to use any more than 4 GB, at least for the DIAdem instance.

 

Paul    

0 Kudos
Message 9 of 9
(2,919 Views)