Let's get started
Basic back and forth.
If you need help installing the software, check out the instructions here. From here on out we assume you have followed all installation instructions, including the last detail where Excel is linked to the .xll file.
Bring up the engine simply by clicking the Windows start button, typing the name "parietal" and clicking on the application icon.
You should now see a black box with some information on it. Things like version information, license status and machine id. You can minimize (but not close) this window. It is important to remember that this is the engine that does the number crunching. This needs to be running for the Excel add-in to work.
Now bring up Excel. You should see a tab towards the right on the ribbon named Parietal. If you don't see it there, then likely one of two things has happened. You either did not link Excel to the parietal.xll file or installed the wrong bit version. If this is the case and you don't see the Parietal tab, we recommend you follow the installation instructions here.
Clicking the Parietal tab you should see something like this.
So, you initialized the engine, opened up Excel and verified that the Parietal tab was present. Now lets run some numbers.
It is important to understand the role of the Excel add-in. Its job is simply is to take your requests, communicate them to the engine, get the response and display it on the worksheet. In other words, the core calculations happen in the engine, not in Excel itself.
The operations we performed above were synchronous. We created a request and fired it off for completion. Then we waited a tiny amount of time for the results to come back and which were written to the sheet.
But how about something like a simulation which would take a while to run? Would it be reasonable to freeze Excel for long period of time while the calculations are being performed? Obviously not. What we need for long running tasks is a workflow that is asynchronous. You'll be surprised at how easy and seamless we have made this for you.
Let's go with a task that will take a non-trivial amount of time to run e.g. something like an MCMC simulation.
To pull in a completed task, simply click anywhere on that row and hit Fetch. That's it.
To cancel a job that is still in progress, click anywhere on that row and hit Try Kill. The engine will try and kill the task.
Multitasking is possible even if you have requested multiple long running tasks. And it couldn't be any easier. If it wasn't clear from the section above, you can keep working and request additional sync and async jobs even while the engine is already working.
The engine will try and use all cores on your machine. Jobs enter a queue and are popped off for completion as cpu resources become available.
After requesting enough async tasks, you might notice parietal.exe is taking up more and more memory. You can observe this in the Windows Task Manager. The reason this is happening is that parietal.exe is caching results of async tasks that it has completed. If you decide you no longer need these cached results, you can click Free Mem. The engine will clear the cache and you will notice the size of the parietal.exe process shrink.
The extent of parallelism is limited to the number of logical cores in your machine.
If you try to kill a very large async task, you might face blocking behavior if you request any other async operations while the engine is trying to complete the cancellation request.