I'm working in statistical analysis with a software (not too complicated) developed in Visual Basic. The calculations are however very long and time consuming, and I'm planning to chance from a dual core to a 4/6 core processor. As I understand, multiple cores do not necessarily will translate into a higher speed for a single application as they are meant to handle different applications at the same time but not to split the work of one single application among the processors (unless it is a multithread application). The question is whether, if I open the same software several times (let's say 6 times) and run the same six applications at the same time in parallel (but each one dealing with different parts of the calculations), whether a 6 core processor will handle the work so that each "core" will deal with each of the 6 parallel applications that are running. This would mean that in fact with a 6 core processor the time needed to carry out 1 calculation with my software would be the same than the time needed to carry out the 6 calculations in parallel, is this correct?
Please bear in mind that this is more related to the Operating System.
Windows will automatically assign the tasks to each Core. You should be able to assign a specific process to a specific core on the Device Manager.
For accurate information, we would recommend to contact Microsoft*.