Category Archives: Scientific Computing

PhD Student Position in Scientific Computing on Many-Core Architectures

My colleague Josef Weinbub and I are looking for a motivated PhD student to join our efforts as a research assistant at the Institute for Microelectronics, TU Wien. If you

  • have recently completed or expect to soon complete your Master's degree in mathematics, computer science, or a related discipline
  • have previous exposure to OpenCL or CUDA
  • enjoy working on open source software

then apply via email to no later than Wednesday, November 9, 2016. Use the code "307.8.2" to reference this position.
Continue reading

Sparse Matrix-Matrix Multiplication on Intel Xeon and Xeon Phi (KNC, KNL)

The latest incarnation of the Intel Xeon Phi product line, codename Knights Landing (KNL), is becoming more broadly available. As such, there is a lot of interest in how it performs, particularly when compared to other contenders in the high performance computing landscape. I have posted STREAM benchmark results for KNL earlier in my blog, which outlined the potential benefit of the high bandwidth memory (MCDRAM) of KNL. Let us have a look at a more complicated operation, which is neither limited by raw compute power nor by raw memory bandwidth: sparse matrix-matrix multiplication (aka. sparse matrix-matrix products). Continue reading

Computational Science And Engineering Software Sustainability And Productivity (CSESSP) Challenges

Is writing code essential for your every-day work, be it research, development, or engineering? Did you have to take a coding shortcut here or there to get the task done? Do you think that your code would need a bit more polishing before handing it out to other people? If you answer all these questions with yes, you're not alone! Continue reading

CfP: High Performance Computing Symposium 2017

Do you have new and exciting research results in the area of high performance computing? Then consider submitting your work to the 25th High Performance Computing Symposium (HPC 2017)! The optional abstract submissions are due on October 15, 2016. Full paper submissions (8 pages max.) are due on December 15, 2016. Continue reading

Knights Landing vs. Knights Corner, Haswell, Ivy Bridge, and Sandy Bridge: STREAM benchmark results

The Knights Landing (KNL) update of Intel's Xeon Phi product line is now available. For the applications I'm primarily interested in, namely the numerical solution of partial differential equation, the typical bottleneck is memory bandwidth. To assess memory bandwidth, the STREAM benchmark is the de-facto standard, so let us have a look at how KNL compares to the previous Xeon Phi generation (Knights Corner, KNC) as well as to the Xeon product line.
Continue reading

FWF-Project: 3D Solution of the Boltzmann Equation on Supercomputers

The Austrian Science Fund (FWF) approved my project proposal entitled "3D Solution of the Boltzmann Equation on Supercomputers". This project will fund my scientific work for three more years, with prospective start in mid 2017. Here is a brief summary of what this project is about. Continue reading

Three Suggestions for Improving OpenCL for Library Developers

OpenCL is not (yet) a success story in high performance computing. More researchers are drawn towards NVIDIA's CUDA, harvesting a richer toolchain and ease of getting started. A vendor-lock seems to be less a concern for my colleagues, even though I do not agree as somebody who is paid from public money.

Anyway, this blog post is not yet-another-OpenCL-vs-CUDA discussion. Instead, it provides three suggestions on how OpenCL could become more attractive for software library developers to grow the OpenCL library ecosystem. Only if OpenCL libraries provide 90+ percent of the functionality a user needs, the user will be willing to spend the time on getting the remaining percent (if any) done. Continue reading

Latency Comparison of Lua, OpenCL, and native C/C++

Just-in-time compilation is an appealing technique for producing optimized code at run time rather than at compile time. In an earlier post I was already looking into the just-in-time compilation overhead of various OpenCL SDKs. This blog post looks into the cost of launching OpenCL kernels on the CPU and compares with the cost of calling a plain C/C++ function through a function pointer, and with the cost of calling a precompiled Lua script. Continue reading