03-28-2013 01:42 PM - edited 03-28-2013 01:48 PM
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!
03-29-2013 11:34 AM
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
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,
03-29-2013 05:17 PM
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
04-01-2013 07:16 AM
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!
04-04-2013 06:19 PM
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
09-20-2018 08:40 AM
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
09-20-2018 03:07 PM
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
09-21-2018 03:12 AM
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.
09-21-2018 06:32 AM
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