Taiwanese Academics Programming the Intel Manycore Testing Lab

This is the second (and probably most relevant) part of a three part sequence on my recent trip to Taiwan. The trip was to do a training course introducing Taiwanese professors on how to use the Intel Manycore Testing Lab.  The first part dealt with my flight and first day on the island nation; the third part is about the misadventures of my return.

Michael Wrinn arrived late on Wednesday night and we met for breakfast Thursday morning. Rachel Liu, our local Intel host and organizer, met us in the hotel lobby with a cab. We got lost on the way to the venue. We were trying to find the National Center for High-Performance Computing (NCHC) in the Hsinchu Science Park. The taxi driver wasn't sure where to go even with the address, but I got to see the wide range of scientific disciplines represented in the Park. Lots of new buildings with some interesting architectural features, too.

We still arrived in plenty of time and were greeted with some great signs and posters in the lobby and closer to the classroom we used. It was impressive to see; Rachel had done a fabulous job. (The signs were too large to get into my luggage, so no souvenir from this event.)

The purpose of the training session was for Intel to present technical material and exchange ideas with leading Taiwan professors in EE/CS/CSIE areas to accelerate the advancement of parallelism into their university curriculums. To accomplish this, part of the agenda was to provide some training on use of the Intel Manycore Testing Lab  and the discuss resources available from the Intel Academic Community. We were also hoping this event would give us the opportunity to engage with core faculty interested in developing parallel computing instruction.

The agenda for each of the two days was essentially the same. In the mornings we (Intel) talked about programming on the MTL. I led those portions and talked about programming with OpenMP and Intel Threading Building Blocks. We had hands-on programming labs so that attendees could log into the MTL and work on some examples. Michael talked about the IAC and the benefits of being a member and contributor. He also talked about some of the Intel software tools that academics can use in their classes. (We had thought to give a real-time demonstration of the tools, but the pipeline between the US and Taiwan was too small to allow an interactive session displaying graphics generated on the MTL.)

We wanted to show off some typical examples of work that could be done on the MTL. This, we hoped, would whet the appetite of the professors to want to try out their own assignments and classroom labs on the platform. I gave a quick presentation on the previous Intel Threading Challenge contests. Only the last contest was able to make use of the MTL (I described the last 4 Master level problems from this contest a bit more in-depth), but it showed the kinds of problems that can be solved in parallel. Michael gave an abbreviated talk about the Berkeley research on programming patterns and was able to show an example of recasting an application into the pattern language which yielded a huge performance benefit.

Lunch was bento-like box lunches. It wasn't quite "mystery" meals since there seemed to be an indication on the box as to what was featured inside. Unfortunately for me it was written in Mandarin, so it didn't help. I got eel on the first day. Someone told me what it was before I could give them my standard request for eating in foreign countries: don't tell me what it is until after I've eaten.  Even so, it was good. I think I had pork on Friday.

The afternoons were taken by the Taiwan professors presenting some of the course material and labs that they have developed for teaching parallelism. Some of the topics that they have been covering are:

  • Evolutionary or genetic algorithms.

  • Scientific applications using libraries (BLAS, LAPACK, etc.). One of the specific applications was modelling the spread of infections.

  • Bioinformatics and DNA sequence alignment.

  • Logic circuit simulation. Multiple input vectors are evaluated in parallel.

  • Simulating the spread of wealth and concentration of money.

I was impressed with the wide range of topics and computational problems that are being covered. Many of the application areas come from outside of the traditional CS degree topics.

At the end of each day we had a question and answer period. The discussion was mostly about the resources that Intel could bring (hardware, software, training, teaching material) to collaborations with Taiwanese universities. Several professors were interested in getting a Manycore Testing Lab platform built and installed in Taiwan. Such an installation would make the use of GUI tools directly on the machine much faster.

Over the two days we had over 40 professors and students attending. The picture below was taken on the first day.

I knew that everyone was serious about the training and getting the experience to program on the MTL when I saw that the professors were diligently working through the hands-on labs. I expect students to work on labs, because that's what students do. However, in past training events that I've been involved with, there have been professors that don't even try the simple labs. I guess that once they feel they understand the material, there's no need to practice it at that time. Watching everyone in the classroom focused and working the labs was a nice compliment to me and everyone else that worked to develop the training material.

All in all, it was a very successful event. I'm  looking forward to future collaborations with these professors and students.
Para obter informações mais completas sobre otimizações do compilador, consulte nosso aviso de otimização.