Tag Archives: Windows

Spreadsheet of death

R@CMon, thanks to the Monash eResearch Centre’s long history of establishing “the right hardware for research”, prides itself on effectiveness at computing, orchestrating and storing for research. In this post we highlight an engagement that didn’t yield an “effectiveness” to our liking, and how that helped shape elements of the imminent R@CMon phase2.

In the latter part of 2013 the R@CMon team was approached by a visiting student working at the Water Sensitive Cities CRC. His research project involved parameter estimation for an ill-posed problem in ground-water dynamics. He had setup (perhaps partially inherited) an Excel spreadsheet based Monte Carlo engine for this, with a front-end sheet providing input and output to a built in VBA macro for the grunt work – an erm… interesting approach! This had been working acceptably in the small, as he could get an evaluation done within 24 hours on his desktop machine (quad core i7). But now he needed to scale up and run 11 different models, and probably a few times each to tweak the inputs.  Been there yourself?  This is a very common pattern!

Nash-Sutcliffe model efficiency

Nash-Sutcliffe model efficiency (Figure courtesy of eng. Antonello Mancuso, PhD, University of Calabria, Italy)

MCC (the Monash Campus Cluster), our first destination for ‘compute’, doesn’t have any Windows capability, and even if it did, attempting to run Excel in batch mode would have been something new for us. No problem we thought, we’ll use the RC, give him a few big Windows instances and he can spread the calculations across them. Not an elegant or automated solution for sure, but this was a one-off with some tight time constraints, so it was more important to start calculations than get bogged down with a nicer solution.

It took a few attempts to get Windows working properly. We eventually found the handy cloudbase solutions trial image and its guidance documentation. But we also ran into issues activating Windows against the Monash KMS, turns out we had to explicitly select our local network time source as opposed to the default time.windows.com. We also found some problems with the CPU topology that Nova was giving our guests, Windows was seeing multiple sockets rather than multiple cores, which meant desktop variants were out as they would ignore most of the cores.

Soon enough we had a Server 2012 instance ready for testing. The user RDP’d in and set the cogs turning. Based on the first few Monte Carlo iterations (out of the million he needed for each scenario) he estimated it would take about two days to complete a scenario, quite a lot slower than his desktop but still acceptable given the overall scale-out speed up. However, on the third day after about 60 hours compute time he reported it was only 55% complete. Unfortunately that was an unsustainable pace – he needed results within a fortnight – and so with his supervisor they resolved to code and use a different statistical approach (using PEST) that would be more amenable to cluster-computing.

We did some rudimentary performance investigation during the engagement and didn’t find any obvious bottlenecks, the guest and host were always very CPU busy, so it seemed largely attributable to the lesser floating point capabilities of our AMD Bulldozer CPUs. We didn’t investigate deeply in this case and no doubt there could be other elements at play here (maybe Windows was much slower for compute on KVM than Linux), but this is now a pattern we’ve seen with floating point heavy workloads across operating systems and on bare metal. Perhaps code optimisations for the shared FPU in the Bulldozer architecture can improve things, but that’s hardly a realistic option for a spreadsheet.

The AMDs are great (especially thanks to their price) for general purpose cloud usage, that’s why the RC makeup is dominated by them and why commercial clouds like Azure use them. But for R@CMon’s phase2 we want to cater to performance sensitive as well as throughput oriented workloads, which is why we’ve deployed Intel CPUs for this expansion. Monash joins the eRSA and NCI Nodes in offering this high-end capability. More on the composition of R@CMon phase 2 in the coming weeks!

Maya/mental ray Render Farm on R@CMon

Autodesk Maya is a comprehensive software suite that offers 3D computer animation, modelling, simulation, rendering and composition. Maya has been used in various industries to generate 3D assets that are used in film, television, game development and architecture. mental ray is a high performance 3D rendering software for producing highly realistic images using advanced ray tracing techniques. Used by various industry professionals, mental ray has become a standard of photorealistic renderings across many industries.

Tom Chandler, Lecturer, Faculty of Information Technology at Monash University and his team have been using both Maya and mental ray to create highly realistic images and animations for various projects. Their previous render farm was built with traditional desktop machines. As the demand for more resolution, more detail, more frames and more projects continues to increase, they realised that desktop rendering couldn’t provide the capacity and agility to meet their resource requirements. Fortunately Tom heard of a similar render farm the R@CMon team helped in porting into the NeCTAR Research Cloud and then approached us.

The R@CMon team assisted Tom’s team in setting up a Windows Server 2012 environment in the Monash node of the NeCTAR Research Cloud where both Maya and mental ray are installed, licensed and configured. Access to the environment is done using Remote Desktop Connection.

maya-remote-desktop

The Maya 3D animation software, running on a R@CMon-provisioned Windows Server 2012 virtual machine.

Tom’s team started migrating their 3D rendering projects into the Maya/mental ray render farm now running on the NeCTAR Research Cloud. One of these projects is The Visualising Angkor Project – “Visualising Angkor Project” Monash University Faculty of IT, 2013. It is a collaborative project between Monash University and University of Sydney which explores the 3D generation and animation of the Angkor landscapes during the medieval period. The project presents some challenges on how virtual Angkor is interpreted based on archaeological and historical data.

The following is the latest animation rendered on the Maya/mental ray render farm by Tom Chandler’s team for The Visualising Angkor Project – “Visualising Angkor Project” Monash University Faculty of IT, 2013It contains about 1.5 million triangles, 100 materials, 100 textures, and a total of 1275 frames.

Cinema4D Render Farm on R@CMon

Jon McCormack, an Associate Professor from Faculty of Information Technology at Monash University, creates high-resolution renderings of various subjects. His artworks have been showcased in leading galleries, museums and symposia.

Before the advent of the Monash node of the NeCTAR Research Cloud, Jon has been limited to running his render jobs to a couple of machines he can get his hands on in the faculty. After the first phase of the Monash node went online, the R@CMon team helped Jon in porting his rendering workflow in the NeCTAR Research Cloud environment. Jon uses Cinema4D for creating his high-resolution renders. Cinema4D runs on Windows and OS X so we’ve prepared a suitable Windows Server 2012 image for this purpose.

We assessed the performance of a NeCTAR guest running a rendering job. For this, we’ve used CINEBENCH from MAXON, a well known benchmarking tool to measure and compare CPU and graphics performance of various systems and platforms. The following video shows CINEBENCH running on a 16-core guest in the Monash node.

The CINEBENCH result showed that the guest performed well on the “Main Processor Performance (CPU)” component. Once GPUs become available in the second phase of the Monash node, we’ll be looking at running the second component of CINEBENCH which measures “Graphics Card Performance (GPU)”.

Cinema4D comes with a distributed rendering system which allows unlimited render clients connecting to a render server. The render server is where render jobs are submitted and is in charge of distributing it to the available render clients. NeCTAR guests have been provisioned to be render clients in Jon’s tenancy that talks to Jon’s render server running on a dedicate machine. Each render client renders a frame or a tile and submits the finished render back to the render server.

The following are some low-res renders from the “Image from Fifty Sisters, commission for the Ars Electronica Museum, Linz, Austria 2012/2013. Copyright Jon McCormack” project that Jon produced using his render farm in the NeCTAR Research Cloud.

76 tree - Fifty Sisters Series

Esso - Fifty Sisters

BP old form - Fifty Sisters Series