Thursday, November 20, 2008

Nvidia Cuda- Kudos or Complaints?

In a previous article we began speculation about the impact that the new Nvidia Tesla boards might have on the proliferation of HPC in the manufacturing space, and this started discussion about the difficulties of programming GPUs. This week I had the chance to "sit down"( we were standing and walking in the Nvidia booth, actually) with Sumit Gupta of Nvidia to talk a bit about Cuda programming.Cuda is a library that adds keywords to C to express parallelism, making it a potentially more intuitive model for parallel programming. "It will not make parallel programming easy," claimed Gupta, "but it does make it easier". Like many other vendors selling parallel programming tools and languages, Nvidia has their stories about high school kids successfully using them as proof that they are easy. I am not buying that as a valid measure. I know high school students who can do things even I can't with a computer. I say give the tools to an old school C programmer on the plant floor. If he can use them, THEN they are easy ;-)

It is important to note up front that the Cuda/Tesla partnership is most suited to problems that are embarrassingly parallel in nature and can be easily spawned over 30,000 threads. The speed gain by this pair is in hiding memory latency;if you have too few threads, the memory latency remains and speed gains are not realized. This means that if your threads will be sharing data at all, you will end up with traffic collisions and will not see any gain.

If your problem, like Helen of Troy, can launch a thousand threads, then the advantage of Tesla is that it was built to handle the thread management for you. As Gupta said, "launch as many threads as you can and let the hardware handle it". There is a very active user forum at the CudaZone where people are sharing code, examples and advice. The forums are populated not only by users, but also by Nvidia employees who help users solve problems and learn the programming environment.

Although some of you are ubergeeks who enjoy hacking code and will probably show up on the Nvidia forums, for most plant floor folks, this new technology is not really useful until it shows up in COTS software. At the show this week, Ansys was demonstrating a mechanical library that had been ported to CUDA and The Portland Group announced that the latest version of their PGI tool would include "Provisional support for x64+GPU on 64-bit Linux for CUDA-enabled NVIDIA GPUs using the new high-level PGI Accelerator Compilers programming model".

Like all other IT solutions, this is not a silver bullet, and the ecosystem of software support is still young, but it is still an area to watch closely- it may even have an application in your plant today.

Wednesday, November 19, 2008

Good news for Business in New Mexico

In contemplating a move to using HPC to speed up processes in their plants, many businesses are staring at an "expert knowledge gap" that can make them feel like they are trapped at the bottom of a canyon. New Mexico, the state famous for its canyons, has recently launched a collaborative center that can give businesses a hand out of the gap and into profitability. The New Mexico Computing Applications Center(NMCAC)was launched on September 19, 2008 and I had a chance this afternoon to sit down with Dr. Thomas Bowles, Chairman of the Board of Directors for the center & Science Advisor to Governor Bill Richardson of New Mexico, and Dr. Lorie Liebrock, the education director at the center to learn more about the services they are offering to manufacturers and other businesses.

The NMCAC is a nonprofit organization which owns its own hardware, Encanto, the 7th fastest computer in the world according to the Top 500 list in June 2008. They provide access to the experts at the 5 founding organizations:University of New Mexico,New Mexico State University,New Mexico Institute of Mining & Technology,Los Alamos National Laboratory, Sandia National Laboratories and to their recently announced partner, Darkstrand. With this combination of resources, the NMCAC sees itself as an HPC Integrator. Although Dr. Bowles credits the Blue Collar Computing Initiative at OSC as a model for the center at its conception 2 years ago, the services are slightly different. NMCAC is giving primary focus to its integrator role, rather than providing HPC SaaS. Just as you might hire an integrator to assist with evaluation, planning and implementation of a new MOM system on the plant floor; you now have access to an HPC integrator who can assist with up front analysis, planning and implementation of your HPC projects.

Since the NMCAC is partially funded by the State of New Mexico, they give priority to businesses who either directly or indirectly can show positive impact to economic development in the state. If you are a business or a start up located in New Mexico, they are also working with the local Economic Development Boards to assist with funding and maybe get your first consult with no out of pocket expense.

What advantage does an HPC integrator bring to a business? If you are contemplating moving legacy systems to an HPC platform, they can assist with the upfront consult to evaluate if this has ROI. If you are developing a new algorithm, or are investigating recently developed algorithms for new processes, you can have access to some of the best computing brains in New Mexico to assist. If you have a one time need for modeling or simulation to take a product from late stage R&D to production, they may already have the software and training needed to complete this, rather than your company making that infrastructure and personnel investment.

What remains unknown at this early stage is how affordable the pricing is for out of state businesses, and what the turn around time for problem solving will be. We are certainly excited about the possibilities that this new model presents and are hoping to see other "HPC Integrators" popping up in the ecosystem soon. We will be following their growth and experiences, but if you have a chance to work with the NMCAC, be sure to leave a comment below and share your experiences with us.

Shape the future of Software services

We have previously touched on the idea of purchasing cycles of compute time from a service provider as a way for small or mid size businesses to do simulations or data analysis without investing in infrastructure. This is also a useful model for large companies who need a way to manage peak flow, or even as a "try before you buy" model to prove out ROI. There is a review article in the works comparing/contrasting the different service providers to help you better make decisions. Almost all of these vendors provide raw compute cycles, you have to provide the software and the expert domain knowledge. Yesterday here at SC08 I had the chance to meet and talk with a company who is taking a slightly different approach. Cycle Computing is not just selling raw compute cycles, they are selling HPC software runs as a service. They work with ISVs, purchase appropriate software licenses and make sure the software runs on the hardware. All you have to do is supply data through the secured pipe and receive results. Application interfaces can current be SSH, a RESTful web interface, or even a VPN into your business network.

They have been successful with this model in the financial and pharmaceutical verticals and are looking to expand into other areas of manufacturing. What are the implications of this for your manufacturing businesses? HPC results without the HPC headaches. No hardware to purchase, install, configure and administer. No software license purchases, management or renewals. No long term contracts for software services you only use twice a year-- pay only for the compute cycles you actually use. What will it take to make this a winner? If the services,speed and price are right, this could be a huge win for many businesses. And at this point in time, you have the ability to help shape the service into something that works for you. Cycle computing is looking for feedback on what software packages you would make the best use of. I say this is your time to give them feedback on all points of the service. What is your price point requirement? (I do not think that Free is an option at this point....) What are the technical requirements/security considerations that would make or break this as you try to sell it to your management? You can comment below and let them know what your dream HPC software service would look like.

Tuesday, November 18, 2008

Hidden Gems- bread crumbs to a vision?

Every day in almost every plant in the US, Dell provides great value. There are low cost, high efficiency Dell computers assisting us in running plant floor systems better spread all over the world. I was then, excited to hear that Michael Dell, CEO of Dell computers was giving the opening keynote at SC08 here in Austin. Perhaps that is also the reason for the deepness of my disappointment in the talk (you can see my stream of consciousness thoughts on the keynote as it was going by using this Twitter RSS feed).
Don't get me wrong, it was entertaining. The art department at Dell creates gorgeous slides. More importantly, buried in amongst the 40 minute Dell commercial, there were some hidden gems for the folks in manufacturing to contemplate. While I do not think that these qualify a a true vision, they are perhaps breadcrumbs on the path to having a vision for HPC. Consider the following points:

  • Dell is predicting that by 2010 processors will contain 80+ cores. If you think that the software pricing model for your plant floor software and back end databases is a budget busting nightmare with dual or quad core processors now, imagine what will happen in a few years when the smallest processors have 20 or so cores on them and high end processors are 80 cores. Now is the time for manufacturers as a group to start working with vendors to get the software pricing problem fixed.

  • Michael Dell admitted that the recent "core war" started recently and escalated fast, but he was very firm in the idea that it was not going to end soon. Software is the big gap in all of this. If super multi-core machines are going to be available on the plant floor soon, which vendors are poising themselves to take advantage of that power? Even though tasks like scheduling could be written to take advantage of parallel computing power, I do not know of any out of the box programs that do. I certainly can not know everything, so please comment if you know of some. Yes, there are companies out there (FedEx comes to mind first) who are writing custom algorithms and software, but that requires a huge investment in time, talent and money. I will point out to the plant floor software vendors amongst us Michael Dell's thoughts "..there is a need for petascale software to take advantage of all of this computing hardware .....if you can be the first to figure out a way to use all this hardware power, there is a lot of financial advantage to be made".

  • It was pointed out how deeply prices for compute power have dropped in the last 5 years. In 2003, 2 teraflops of compute power cost roughly a million dollars. That put 2 teraflop questions firmly out of reach for most manufacturers. The benefit gained was not worth adding a million dollars to production costs. Today, you can get 25 teraflops for a million dollars. In the current economy, you are even less likely to want to add a million dollars to production costs- but that scale means that for at most 80 thousand dollars, you can get 2 teraflops of compute power.
    What 2 teraflop questions/problems are you not tackling because you are still thinking in terms of 2003 pricing? What simulations or real time data analysis could be giving you a competitive edge, that you have not even considered for fear of sticker shock??

    I am off to try to set up some one on one time with Dell's manufacturing outreach folks. If you have specific questions for Dell related to their use in manufacturing, comment them below so I can get responses for you. Perhaps they will be able to give me more interesting insights in the vision at Dell, since Mike missed the mark.
  • Michael Dell: SC08 Keynote

    Although I will post a summary, notes and thoughts of this morning's SC08 Keynote, given by Michael Dell( CEO of Dell Computers) here later this afternoon, I thought some of you might want to watch along. The advantage of a high tech conference with speakers with lots of technology resources is that they can set up streaming video when they talk.
    if you are interested, you can watch the keynote at http://www.dell.com/sc08. Part of his talk will be a review of HPC technology and developments over the last 40 years, but then he will also be talking about the future vision. Dell's current big push is how to simplify HPC, and they have active outreach for the manufacturing sector(more on that after my interviews later this week).
    I am off to coffee up and prepare for the keynote, enjoy!

    Sunday, November 16, 2008

    HPC Brokerage services: one cloud that won't rain on your parade

    Bob Graybill has started Nimbus, a company that is designed as a brokerage house for HPC services and cycles. He discusses the company's HPC service offerings and rationale for this new company with HPCWire:

    To be a business-to-business brokerage or clearinghouse. The idea is to provide pre-negotiated access to cycles, software and expertise on an on-demand, pay-as-you-go basis. We won't own any equipment or do consulting ourselves. We're simply a clearinghouse that builds a menu of quality services and then brings the buyers and the sellers of those services together. Our targets are periodic and experimental users, initially in the manufacturing sector. These are people who don't want to jump over huge hurdles to get the benefits of modeling and simulation using HPC. We're an aggregator of services. We also help our partners, our service providers, by reaching out to a brand new community on their behalf.