VIDEOS & PODCASTS
The Entire Game Should Move Onto the GPU, says Rev Lebaredian
As the computing functionality and horsepower of GPUs has grown over the last few years, the role of the GPU is rapidly expanding to game tasks beyond rasterization-based graphics. Now GPU computing can be used for solving a variety of problems in game computing including game physics, artificial intelligence, animation, post-processing effects and others. Rev Lebaredian, Director of Engineering in Nvidia, says that as GPUs grow and become more general purpose, more and more of the game is going to be shifting over to the GPU. The final goal is to have the whole game run on the GPU.
Rev Lebaredian leads a team of engineers developing APEX - a middleware library and tools for integrating realistic and scalable physics simulation into games. APEX is a new technology that empowers artists to quickly create fully interactive in-game clothing, destruction, particles and vegetation. APEX is a middleware library and artist-oriented tools, built on top of Nvidia's PhysX software. The APEX framework streamlines the integration of new effects into games.
Saltmarch Media spoke to Rev Lebaredian during his recent visit to Bangalore, India. The discussion began with a topic close to Rev's heart – APEX. "APEX is trying to handover the power of game physics to the artists directly as they are the biggest section of employees in a game development company. By achieving this, an artist need not depend on a programmer to achieve every task and this in turn will enable the creation of a lot of creative content which the user of today has come to expect from games," says Rev.
Read on to know Rev's thoughts on moving the entire game to the GPU starting with graphics and physics, how video applications are tapping the increasing computing power of GPUs, optimal Direct X 11 support, and advancements in the graphics and digital media processors industry. Rev also shares his experiences with using Optimus technology that addresses the performance/battery life balance by automatically selecting the right graphics processor-between an Nvidia discrete GPU or an Intel integrated GPU
Q. Please introduce yourself to our readership and talk in a bit about your role at Nvidia.
Rev Lebaredian: I am the Director of Engineering within the Content and Technology group within Nvidia. This is the group that deals primarily with application developers. My responsibility right now is leading the group that develops a product called APEX.
APEX is a middleware solution we have been creating and implementing in actual games that enables game developers to put hi-fidelity simulation and dynamics into their games with minimal amount of work for the quality that they get out of it.
The goal is to make APEX scalable across platforms and allow game developers to put as much of it as possible in their games by leveraging their artists, instead of just a few programmers in their group who know game physics.
Q. One of your talks at India Game Developer Summit specifically revolved around APEX, a middleware library and tools for integrating realistic and scalable physics simulation into games. Can you explain APEX in a bit?
RL: What we found while integrating physics with the GPU was that for many years, the bottleneck in most game productions was the fact that most of the actual employees within any game studio are artists and the ratio of artist to other employees remains big because games are getting bigger themselves.
So in order for us to get more content in games we need to address the issue at the artist level and allow and enable them to create physical content without having to depend on a programmer to do everything.
Currently within development companies there are around one or two artists who are experts at doing physics programming and that is not sufficient for us to really enable games with the kind of content everybody wants.
Q. APEX is built on top of Nvidia's PhysX software. PhysX was designed by a company called AGEIA, which was acquired by Nvidia in 2008. What do you see as the benefits of the acquisition?
RL: AEGIA was a great acquisition for us. We knew that as GPUs grow and become more general purpose, more and more of the game is going to be shifting over to the GPU. The final goal is to have the whole game run on the GPU.
The next natural step after graphics is physics. It is very parallelizable and it is scaleable. There is lots of computation so it is in many ways a good fit for GPUs. So we evaluated and found out that it would take a lot of time to build up a physics library just at the rudimentary level and that it was much better to do an acquisition.
We were lucky as AEGIA were willing to do this and they have also had a lot of experience with accelerating physics on the hardware. So in many ways it was a perfect match for us. What they were trying to do with their products matched our business model and hence the expertise that they had gained matched us perfectly. This also has ramifications in the future.
What we learn from moving physics over to the GPU will apply to everything else we try to move over to the GPU as well. Physics is a great real-time application to try to move to the GPU so it is critical for us to have technologies like this in-house that we can use as beacons for where our architectures need to go in the future on the whole.
Q. More and more processing is now being done on the GPU. And video is the killer application for the GPU. What are the new kinds of video applications that are tapping the increasing computing power of GPUs?
RL: Encoding and transcoding are already big on the GPU and we are seeing many compute based applications that take advantage of the raw horse power of the GPU. As and when people create more and more digital media, there is an insatiable appetite for computing power in order to process this and archive it and store it in ways that are convenient for people. So we definitely have a big need for this sort of computation abilities.
In addition there are lots of problems with video that are naturally suited towards massively parallel architectures. Motion estimation, doing optimal flow, and these sort of image processing problems map very nicely onto the GPU.
Q. Nvidia had earlier pioneered a technology called switchable graphics to address the performance/battery life balance. But it was cumbersome to use since users had to manually switch between the two display adapters. Recently Nvidia released the Optimus technology that automatically selects the right graphics processor-between an Nvidia discrete GPU or an Intel integrated GPU. Have you used the Optimus technology and what is your feedback about it?
RL: I think its fantastic and it is much better than the switchable stuff that we had before. Optimus is extremely elegant and I think what you will find in the reviews and in the press will confirm this. Everybody loves this and I think it is the ideal solution to this particular problem and it is the sort of thing that we are actually good at.
It has taken a lot more than just developing hardware and the driver in order to produce something like this. We have to go through all the applications people are running, create a profile and invest a lot in QA and there are things we have to do in an ecosystem to create a product like this. So it makes me proud when we actually deliver something as elegant as this as a company.
Q. Will optimal Direct X 11 support be a deciding factor in terms of GPU sales in the next few years?
RL: History has always shown that to be true with respect to GPUs. We are not done with graphics. There is obviously a long way to go before we get to photo realism. And with games we are not even close to where film has been for many years now. DirectX 11 is a large step towards that.
We have had a lot of texture complexity for a long time and we have hit the limits of it and it looks kind of weird when the geometric complexities of games do not match the shading and texture complexity that we have become accustomed to. So as soon as we have some games out there that take advantage of DirectX 11 features, it is going to become obvious that all games need to increase their geometric quality to match this.
Q. What are the advancements you see in the graphics and digital media processors industry in the coming years?
RL: We are at an inflexion point in this industry. The whole parallelization thing was something the world was forced to accept when CPUs started going to dual core. We are not able to depend on the same speed ups that we were getting year after year with traditional CPU architectures. So GPUs happen to be at the right place at the right time.
With the level of programmability we have now, we are slowly converging towards the limits of what CPUs will eventually become. So now it is a race to see who can create the massively parallelizable architecture for the future. My hope is to see applications as complex as games completely running on the GPU.
Q. What are Nvidia’s ambitions for the next decade?
RL: In the coming years we have a lot of work to do in integrating physics properly onto the GPU. Then we need to ensure that all of it is running in there and it is optimal as possible and coexisting with all other parts of the game that we want to run on the GPU as well – including artifical intelligence (AI) and various sorts of scripting and all the various processes that happen within a modern gaming engine.
SOA with SQL Server
A key component to any distributed architecture built with SOA methodologies in mind is the database infrastructure. Service Oriented Database Architecture (SODA) is much easier to implement and much more robust with features present in SQL Server 2005 and the 2008 release. Technologies such as Service Broker, Native Web Services, Query Notifications, and the SQL CLR built-in to SQL Server provide the ability to fully realize the SODA architecture, explains Chad Boyd in this talk recorded at Saltmarch Media's Great Indian Developer Summit.
Chad is an Architect, Administrator, and Developer with technologies such as SQL Server (and all related technologies), Windows Server, and Windows Clustering. He works with Gratis Internet Inc., an online marketing firm based in Washington, DC, and also spends a significant amount of time writing, talking, presenting and blogging about SQL Server. In the past, Chad has worked with companies and organizations such as Microsoft Corporation and The American Red Cross, and provided consulting/support services at companies such as Bank of America, HP, Citigroup, Qualcomm, Scottrade, TJX, SunTrust, and Zurich Financial Services. For over 2 years with Microsoft Corporation Chad was responsible for providing onsite and remote support, guidance, and advice with SQL Server products to some of Microsoft's foremost enterprise customers running the largest, most complex SQL Server installations and configurations in the world.
A Lap Around Visual Studio Team System
Wonder why 70% of projects are classified as failed projects? Working in silos does not help projects succeed. Learn how Visual Studio Team System 2008 helps break the walls across team members and build bridges to help team members collaborate effectively. In this talk recorded at Saltmarch Media's Great Indian Developer Summit Neelesh Kamkolkar steps through the features of Team System 2008 via demonstration and how it can help you and your team collaborate to deliver the best software possible while providing complete visibility into the software development lifecycle.
Neelesh has several years of experience in software design, development, product strategy and management. He has worked on performance management and diagnostics solutions amongst other technologies that bridge the gaps between application development, quality assurance and operations teams.
Over 6500 attendees have benefited from two game changing editions of Great Indian Developer Summit. In 2010, the biggest independent summit for software developers in India is bringing together over 100 sessions encompassing the full range of Microsoft computing, Java, Agile, RIA, Rich Web, open source/standards, languages, frameworks and platforms, practical tutorials that deep dive into technical skill and best practices, inspirational keynote presentations, an Expo Hall featuring dozens of the latest projects and products activities, Awards to honor software excellence, engaging networking events, and over 80 of the best and brightest of speakers from around the world. The summit will be held 20-23 April 2010 at the IISc in Bangalore. For further information on GIDS 2010, please visit the summit on the web http://www.developersummit.com/.
Busting Common Myths about Developer Productivity
Many traditional assumptions about software development have been challenged in recent years. Agile processes and service oriented architectures are two examples of this. An area that has seen little real scrutiny is developer productivity. Almost by convention, every new tool, framework or approach promises huge gains in productivity but a coherent view of all factors involved is usually missing. In this talk recorded at Saltmarch Media's Great Indian Developer Summit, Erik Dörnenburg examine several common myths about developer productivity and show that productivity improvements often require a trade-off with other desirable goals. He also discusses the relative impact of some tools and approaches.
Building on his experience with J2EE, Microsoft .NET and other environments, Erik Dörnenburg is continually exploring new patterns of enterprise software. His career in enterprise software began in the early nineties on the NeXTSTEP platform and Erik has been an advocate of agile, test-driven, object-oriented development and Open Source software for many years. Before helping clients with the design and implementation of large-scale enterprise solutions at Thoughtworks Erik was Technical Director at Pixelpark UK, a new media company, where he integrated enterprise systems with web-based solutions and a variety of digital delivery channels.
Over 6500 attendees have benefited from two game changing editions of Great Indian Developer Summit. In 2010, the biggest independent summit for software developers in India is bringing together over 100 sessions encompassing the full range of Microsoft computing, Java, Agile, RIA, Rich Web, open source/standards, languages, frameworks and platforms, practical tutorials that deep dive into technical skill and best practices, inspirational keynote presentations, an Expo Hall featuring dozens of the latest projects and products activities, Awards to honor software excellence, engaging networking events, and over 80 of the best and brightest of speakers from around the world. The summit will be held 20-23 April 2010 at the IISc in Bangalore. For further information on GIDS 2010, please visit the summit on the web http://www.developersummit.com/.
.NET Gotchas Workshop by Venkat Subramaniam: Part III
Programmers working on the .NET framework know the power and increased productivity that comes with it, says Dr. Venkat Submramaniam. Like any development, however, there are things that one should pay attention to while programming on .NET. Are there things in .NET that, if we do not pay attention to, may result in more trouble than it is worth? Find out in the third part of this 180-minute Workshop recorded at Saltmarch Media's Great Indian Developer Summit.
In this workshop, Dr. Venkat Subramaniam presents Gotchas that a developer needs to know to be productive in the .NET framework. The issues addressed include framework, language, language interoperability, COM interoperability. Most Gotchas are language independent while a few are C# or VB.NET specific.
In the summer of 2010, Dr. Venkat Subramaniam will be back at Great Indian Developer Summit to conduct focused conference sessions, a keynote and a workshop on topics ranging from F# and .NET CLR, effective Java, testing with dependencies, design patterns in Groovy and Java, Java Generics in version 1.5, functional programming to pointy haired bosses and pragmatic programmers.
Over 6500 attendees have benefited from two game changing editions of Great Indian Developer Summit. In 2010, the biggest independent summit for software developers in India is bringing together over 100 sessions encompassing the full range of Microsoft computing, Java, Agile, RIA, Rich Web, open source/standards, languages, frameworks and platforms, practical tutorials that deep dive into technical skill and best practices, inspirational keynote presentations, an Expo Hall featuring dozens of the latest projects and products activities, Awards to honor software excellence, engaging networking events, and over 80 of the best and brightest of speakers from around the world. The summit will be held 20-23 April 2010 at the IISc in Bangalore. For further information on GIDS 2010, please visit the summit on the web http://www.developersummit.com/.
Silverlight Deep Dive Workshop by Todd Anglin: Part III
Do you want to truly understand Silverlight? If so, do not miss this three-hour workshop that will cover everything from Silverlight basics to advanced topics like cross-site XHR. In the third part of the Workshop recorded at Saltmarch Media's Great Indian Developer Summit, Telerik's Todd Anglin he looks at more advanced Silverlight topics like building custom UI controls and managing security. You will leave this workshop with a complete understanding of Silverlight and how you can use it to build real applications.
During the first hour of the workshop, Todd examines the history of Silverlight, study its importance as a technology, and look at the tools available for building Silverlight applications. In the second hour of the workshop he dives deeper and begins building simple Silverlight applications that show-off key features like .NET support and DOM manipulation.
In the summer of 2010, Stephen Forte, Chief Strategy Officer of Telerik, and Mehfuz Hossain, a core member at Telerik Corporation, will be at Great Indian Developer Summit to conduct focused conference sessions and a workshop on topics ranging from Business Intelligence design patterns and Microsoft Excel's PowerPivot 2010, sharing code between Silverlight and .NET using C#, Visual Basic and more, building line of business applications with Silverlight 4.0, developing with the Windows API code pack for Microsoft .NET framework, extending Visual Studio 2010 With Managed Addin Framework, and a workshop that will give you a jump start in taking the scrum master certification exam and adopting Agile project management and development methods.
Over 6500 attendees have benefited from two game changing editions of Great Indian Developer Summit. In 2010, the biggest independent summit for software developers in India is bringing together over 100 sessions encompassing the full range of Microsoft computing, Java, Agile, RIA, Rich Web, open source/standards, languages, frameworks and platforms, practical tutorials that deep dive into technical skill and best practices, inspirational keynote presentations, an Expo Hall featuring dozens of the latest projects and products activities, Awards to honor software excellence, engaging networking events, and over 80 of the best and brightest of speakers from around the world. The summit will be held 20-23 April 2010 at the IISc in Bangalore. For further information on GIDS 2010, please visit the summit on the web http://www.developersummit.com/.
.NET Gotchas Workshop: Part II
There are several things that one should pay attention to while programming on .NET, says Dr. Venkat Submramaniam. Are there things in .NET that, if we do not pay attention to, may result in more trouble than it is worth? Learn more in the second part of the Workshop recorded at Saltmarch Media's Great Indian Developer Summit. In the second part of this three-hour Workshop, Dr. Venkat Subramaniam presents Gotchas that a developer needs to know to be productive in the .NET framework. The issues addressed include framework, language, language interoperability, COM interoperability. Most Gotchas are language independent while a few are C# or VB.NET specific.
In the summer of 2010, Dr. Venkat Subramaniam will be back at Great Indian Developer Summit to conduct focused conference sessions, a keynote and a workshop on topics ranging from F# and .NET CLR, effective Java, testing with dependencies, design patterns in Groovy and Java, Java Generics in version 1.5, functional programming to pointy haired bosses and pragmatic programmers.
Over 6500 attendees have benefited from two game changing editions of Great Indian Developer Summit. In 2010, the biggest independent summit for software developers in India is bringing together over 100 sessions encompassing the full range of Microsoft computing, Java, Agile, RIA, Rich Web, open source/standards, languages, frameworks and platforms, practical tutorials that deep dive into technical skill and best practices, inspirational keynote presentations, an Expo Hall featuring dozens of the latest projects and products activities, Awards to honor software excellence, engaging networking events, and over 80 of the best and brightest of speakers from around the world. The summit will be held 20-23 April 2010 at the IISc in Bangalore. For further information on GIDS 2010, please visit the summit on the web http://www.developersummit.com/.
Silverlight Deep Dive Workshop: Part II
Do you want to truly understand Silverlight? If so, do not miss this three-hour workshop that will cover everything from Silverlight basics to advanced topics like cross-site XHR. In the second part of the Workshop recorded at Saltmarch Media's Great Indian Developer Summit., Telerik's Todd Anglin dives deeper and begins building simple Silverlight applications that show-off key features like .NET support and DOM manipulation.
During the first hour of the workshop, Todd examines the history of Silverlight, study its importance as a technology, and look at the tools available for building Silverlight applications. In the third hour, he looks at more advanced Silverlight topics like building custom UI controls and managing security. You will leave this workshop with a complete understanding of Silverlight and how you can use it to build real applications.
In the summer of 2010, Stephen Forte, Chief Strategy Officer of Telerik, and Mehfuz Hossain, a core member at Telerik Corporation, will be at Great Indian Developer Summit to conduct focused conference sessions and a workshop on topics ranging from Business Intelligence design patterns and Microsoft Excel's PowerPivot 2010, sharing code between Silverlight and .NET using C#, Visual Basic and more, building line of business applications with Silverlight 4.0, developing with the Windows API code pack for Microsoft .NET framework, extending Visual Studio 2010 With Managed Addin Framework, and a workshop that will give you a jump start in taking the scrum master certification exam and adopting Agile project management and development methods.
Over 6500 attendees have benefited from two game changing editions of Great Indian Developer Summit. In 2010, the biggest independent summit for software developers in India is bringing together over 100 sessions encompassing the full range of Microsoft computing, Java, Agile, RIA, Rich Web, open source/standards, languages, frameworks and platforms, practical tutorials that deep dive into technical skill and best practices, inspirational keynote presentations, an Expo Hall featuring dozens of the latest projects and products activities, Awards to honor software excellence, engaging networking events, and over 80 of the best and brightest of speakers from around the world. The summit will be held 20-23 April 2010 at the IISc in Bangalore. For further information on GIDS 2010, please visit the summit on the web http://www.developersummit.com/.
Dr. Venkat Subramaniam's .NET Gotchas Workshop: Part I
Those of us programming on the .NET framework have come to realize the power and increased productivity that comes with it, says Dr. Venkat Submramaniam. Like any development, however, there are things that one should pay attention to while programming on .NET. Are there things in .NET that, if we do not pay attention to, may result in more trouble than it is worth? Find out in the first part of the 180-minute Workshop recorded at Saltmarch Media's Great Indian Developer Summit.
In this workshop, Dr. Venkat Subramaniam presents Gotchas that a developer needs to know to be productive in the .NET framework. The issues addressed include framework, language, language interoperability, COM interoperability. Most Gotchas are language independent while a few are C# or VB.NET specific.
In the summer of 2010, Dr. Venkat Subramaniam will be back at Great Indian Developer Summit to conduct focused conference sessions, a keynote and a workshop on topics ranging from F# and .NET CLR, effective Java, testing with dependencies, design patterns in Groovy and Java, Java Generics in version 1.5, functional programming to pointy haired bosses and pragmatic programmers.
Over 6500 attendees have benefited from two game changing editions of Great Indian Developer Summit. In 2010, the biggest independent summit for software developers in India is bringing together over 100 sessions encompassing the full range of Microsoft computing, Java, Agile, RIA, Rich Web, open source/standards, languages, frameworks and platforms, practical tutorials that deep dive into technical skill and best practices, inspirational keynote presentations, an Expo Hall featuring dozens of the latest projects and products activities, Awards to honor software excellence, engaging networking events, and over 80 of the best and brightest of speakers from around the world. The summit will be held 20-23 April 2010 at the IISc in Bangalore. For further information on GIDS 2010, please visit the summit on the web http://www.developersummit.com/.
Todd Anglin's Silverlight Deep Dive Workshop: Part I
Do you want to truly understand Silverlight? If so, do not miss this three-hour workshop that will cover everything from Silverlight basics to advanced topics like cross-site XHR. During the first part of the Workshop recorded at Saltmarch Media's Great Indian Developer Summit., Telerik's Todd Anglin examines the history of Silverlight, study its importance as a technology, and look at the tools available for building Silverlight applications.
In the second hour, Todd dives deeper and begins building simple Silverlight applications that show-off key features like .NET support and DOM manipulation. Finally, in the third hour, he looks at more advanced Silverlight topics like building custom UI controls and managing security. You will leave this workshop with a complete understanding of Silverlight and how you can use it to build real applications.
In the summer of 2010, Stephen Forte, Chief Strategy Officer of Telerik, and Mehfuz Hossain, a core member at Telerik Corporation, will be at Great Indian Developer Summit to conduct focused conference sessions and a workshop on topics ranging from Business Intelligence design patterns and Microsoft Excel's PowerPivot 2010, sharing code between Silverlight and .NET using C#, Visual Basic and more, building line of business applications with Silverlight 4.0, developing with the Windows API code pack for Microsoft .NET framework, extending Visual Studio 2010 With Managed Addin Framework, and a workshop that will give you a jump start in taking the scrum master certification exam and adopting Agile project management and development methods.
Over 6500 attendees have benefited from two game changing editions of Great Indian Developer Summit. In 2010, the biggest independent summit for software developers in India is bringing together over 100 sessions encompassing the full range of Microsoft computing, Java, Agile, RIA, Rich Web, open source/standards, languages, frameworks and platforms, practical tutorials that deep dive into technical skill and best practices, inspirational keynote presentations, an Expo Hall featuring dozens of the latest projects and products activities, Awards to honor software excellence, engaging networking events, and over 80 of the best and brightest of speakers from around the world. The summit will be held 20-23 April 2010 at the IISc in Bangalore. For further information on GIDS 2010, please visit the summit on the web http://www.developersummit.com/.
Need More Developer Heroes for India, says Intel
Over the last few years, the defining paradigm in computing performance has shifted inexorably from raw clock speed to parallel operations and energy efficiency. Saltmarch spoke to Narendra Bhandari, the Director for Asia Pacific of the Intel Software and Services Group - Developer Relations Division at Intel, to find out how industry participants are adapting to this change. Narendra also speaks on a multititude of topics such as multi-threaded application development, enhancing the end user experience, Larrabee - the new instantiation of Intel architecture designed for highly parallel throughput applications like gaming, that is expected to compete with GeForce and Radeon products from NVIDIA and AMD respectively. He also provides insights into Intel’s forthcoming innovations in products and software that will create opportunities for the developer community to quickly grow and expand their business. Read the complete interview.
Q. Can you introduce yourself to our audience and tell us in a bit about your role at Intel?
I manage the Asia Pacific portion of the group called Software and Services Group (SSG). It is a group within Intel which is focused at making sure that software developers can be more productive and can produce innovative applications on top of hardware, which we produce that is used by our customers. So the focus is to get developers to be productive, get them to use maximum amount of features from the hardware and then get them to produce more innovative applications on top of our hardware.
Q. SSG, unlike virtually all other Intel groups, has teams focused on almost all aspects of Intel platforms. Can you tell us about how SSG is adding value to the platform and ecosystem and why SSG as a group is critical to Intel's plans going forward?
Sure. The SSG basically goes with the value proposition of helping X86 across the board. If you look at it, right from Xeon which is used for servers, all the way down to the Atom processor which is used for smaller devices, we have an x86 instruction set that is compatible from top to bottom. Now this is critical for developers as they can build applications on one platform and at least have availability on other platforms. It may not be completely optimised, but at least have the capability to run it on multiple platforms. What our group does is help build tools and provide a set of frameworks and applications so developers can build applications and have a continuum of applications. From a platform ecosystem perspective we make sure that various other components such as Operating System and middleware are well optimised to take advantage of the hardware features below. The benefit of that is that many of the developers don’t get to mess with the hardware anymore. Nobody writes assembly anymore so we make sure that the layers between the application and the hardware are well optimised so the developers can write on top of the API and take advantage of the hardware features.
Q. Over the last few years, the defining paradigm in computing performance has shifted inexorably from raw clock speed to parallel operations and energy efficiency. What is the feedback you are getting from industry participants who have moved to adapt to this change?
Let’s step back and think as to why it has happened. If you think about it, it is largely driven by the consumers. As a consumer you want to be mobile. You want to carry your data with you. You want to carry your music with you. From a consumer perspective and from a business perspective, you want to carry your applications, e-mail, contacts etc. with you. Now when you are mobile, you want battery life. You want the device to be running at least full day of your usage. And once that started people also wanted performance. You cannot have a mobile device that takes three seconds to look up a contact name because you want it almost instantly. And when a call comes and you press the button you want the voice to come instantly.
So you want the performance and you want the battery life. To balance that, the devices have over time taken to techniques that provide energy efficiency.
Performance can come from two things. One is driving up the clock speed but as we drive up the clock speed, the power consumption increases which is not good for mobile devices like smartphones, notebooks, laptops and devices that largely depend on battery for their usage.
If we increase the clock speed on these devices, the energy efficiency is not very good and the battery runs out very fast. You will get performance but the battery drains out pretty fast.
Many years ago, the approach taken by almost all processor vendors in the industry was to say, “What if in addition to the straight line performance we introduced parallel execution engines. Dual core was the start and now you see multi-core processors coming out in the market. Now once the hardware became parallel, you had to make sure that the software has the ability to take advantage of the multiple execution units or multiple cores in the platform.
Parallelism has been in the industry for many years, in different forms, but when we came out with Pentium 4 with hyper threading, people started to parallelize their application but it was one processor unit running two or three threads of execution. However, as we got into multiple cores the application designers and developers had the flexibility to design more number of threads which could potentially run on these platforms and this gives us increased performance and the clock speed can remain constant or even lower and you get energy efficiency and performance. So from an end user perspective, we get better battery life. From a developer perspective, they can take advantage of the hardware and provide energy efficiency.
Q. Would it be correct to assume that performance enhancements are increasingly becoming dependent on multithreading and that is simply the most effective way to produce gains in application behavior?
Almost 90% of the processors we ship today support parallelism and many of them actually have multiple cores. So when you have the hardware able to run two cores simultaneously, four in the higher end machines, four and six in the server side, Parallelism is one of the most effective ways to drive performance on these architectures. Now the straight line performance has also improved due to our micro architectural improvements. But if you want scaleable performance, threading is right now the most effective way.
Q. What advances are we seeing in tools to enhance multi-threaded application development and what is Intel doing to help parallel software developers keep pace with emerging multi-core architectures?
Let’s take two scenarios. One is somebody is taking an existing application and trying to make it parallel. There are data structures, algorithms, validation techniques and all that needs to be taken care of to move from a straight line application to a multi threaded application. The other scenario could be that you are designing from scratch, where you take a bunch of libraries, put them together but the architecture of the code is coming from scratch. In both these scenarios you do need to test, debug and validate at the end. So Intel has software tools at every stage of the pipeline. We have something called Parallel Studio. Studio implies that we have a suite of tools which help you at different stages of the pipeline. Compilers will produce very efficient code and then there are other tools in previous stages of pipeline to help the developers to be productive in architecting, verifying and debugging the code and of course generating very efficient parallel computing programs.
Q. Part of the challenge with helping advance multi-threaded application development appears to be educating and supporting developers to master this technology. How is Intel approaching this challenge?
We provide the tools that integrate well into the developer environment which the developers are used to already. For example, Microsoft Visual Studio or similar environments. We thought to integrate these tools into those environments so that they can continue to be productive as they have trained themselves in those IDEs, and then they use our tools, compliers etc. from that. So that once you know making sure that the transition for the developer is not significant.
The other approach we took was that we said, “Let’s go work with the top infrastructure players. For example, Oracle, Microsoft, Adobe etc. are all relatively base players and whose applications and software is used across millions of machines around the world. We first spent time with them understanding how to optimise the base applications including databases, middleware, manage run time engines like Java. NET, and many of the open source components and ingredients, making sure that they have the ability to take advantage of the multi core hardware. Then we went to the software application companies who are leaders in the various segments -- financial, media, accounting or high performance computing applications -- and dedicated our engineers and gave them hardware to test and take advantage of the multi core feature and got the key applications used across the globe to become multi threaded. At the very least we provided them the training.
The final stage is that we have online communities where developers can get code samples, get SDKs, peer learning, case studies. All this is available for the worldwide developer base -- the key infrastructure players, the key application players and of course the wide base of software developers -- to take advantage of and to increase their capability at every layer.. We can’t send our engineers to every software company in the world so we make sure they have access to the online resources. Plus we do a series of trainings online, offline, chats, webinars so that people can learn from the others sitting at the comfort of their desk, people can gain the expertise or at least build the confidence in their mind that, “Yes this is pretty easy to do and I have the help I need”.
Q. Specific to our application developer audience, are you able to provide updates on the tools and technologies available to help ensure their visual applications can be optimized on Intel platforms and thereby enhance the end user experience?
The keyword there is visual applications right. Visual applications or visual computing needs the maximum amount of computing to provide a better visual experience. All these are extremely compute intensive task. Also the human eyes see them, and we can detect flaws easily. We can look at something and say, "oh that’s a poor animation" because you know our eyes detect that easily and even a common person can say that didn't look very real. So it's an extremely challenging task for developers in visual computing. Many of the tools I mentioned earlier hold good for the visual computing community also but we also have a visual Adrenalin program targeted towards people who build visual computing type applications. For existing applications which will be based on core and also applications which will potentially come out when Larrabee hits the market over the quarters.
Q. How is Intel's work with universities to provide enhanced training in threading in undergraduate programming courses progressing?
We realize that it’s not just the developers of today but the developers of the future, who are coming out of the universities, who also need to understand the essentials of parallel programming. Once they are well trained on the fundamentals and essentials of parallel programming, it is easy for them to take advantage of dual core, quad core and many core architecture become much easier. They don’t have to ‘unlearn’ straight line programming and then get into parallel programming if we can introduce elements of parallel programming into their course.
Over the years the approach we took was to reach out to the graduate students first. There are around 300 institutions in India that teach parallel programming at some level. At the under graduate program it is a little bit tougher as you need to influence the people who set the curriculum. And since it is a four-year program, the decision making cycles are different in different universities. So we are working with systems through out the world. For instance, in Bangalore (India), we work with Vishweshwarya Technological University (VTU). The undergraduate level will take some time because of the cycles I mentioned earlier. Senior professors in the university are helping to develop the curriculum. So while we bring in the technology, it is great to hear from professors who tell us how to go about with the course design.
Q. Can you tell us what’s new with Larrabee, the new instantiation of Intel architecture designed for highly parallel throughput applications like gaming?
Larrabee is a code name. The software kit and some early samples of the hardware have been provided to a variety of media and gaming companies across the globe. We have also provided a graphics environment, which is like a debugging environment that allows these graphics developers to take the maximum advantage of visual computing features of Larrabee. Larrabee is also very important because it truly is a many core processor. Typically mainstream cores are 2, 4, 6 today, but Larrabee goes into much higher numbers. So scaling of the code has to be significant. There are tools available in the graphics kit that allow you to do pretty high levels of scaling and there are multiple modes provided to program. Not everybody is going to write directly into the metal as we call it. They might use different layers, for example, directX from Microsoft or openGl from the open standard and potentially over time as openCl as it becomes mature. We will see layers in between that will be supported on the Larrabee platform also.
Q. Can you share with us Intel’s forthcoming innovations in products and software that will create opportunities for the developer community to quickly grow and expand their business?
The area which seems to be growing from devices perspective is the mobile devices part. A variety of mobile devices, netbooks and smartphones are growing across the globe in terms of volume.
The nature of Indian consumers is also changing such that they are making more online purchases. The success of application stores is already being demonstrated in many of the mature markets. The paradigm for the developer community is to understand the consumer buying pattern and build applications for it. For developers I would say it is about build for multiple platforms using standard architecture.
Mobile devices are a huge volume including netbooks which a volume leader right now. We are also talking to people about how developers can take advantage of the worldwide opportunity. We have launched the Intel Atom Developer Program focused on building applications for atom based devices. Initially the focus will be on netbooks as it is already there in the market.
Another important thing is that we are focusing on the developer-developer connection. Say, if I want to build an application, without having deep detail of the codecs, hardware and such, I can still build an application using the industry standard components.
Thus the focus is to make the life of the developer more productive. They do not need to build everything from scratch. There will be semblances of engineering validations, testing done through the program so that the person putting together the program gets a sense that many of the technological aspects that he does not know have been taken care of.
So I think it is pretty exciting for developers as they get a chance to have worldwide impact. They can use others components as well as contribute to applications that others are building. For more information about the Intel® AtomTM Developer Program visit www.appdeveloper.intel.com.
Q. What is your vision for Intel SSG in India? Is there anything else that you'd like to share with our audience?
I strongly believe -- at least from the India perspective -- we have an extremely large, mature and growing developer population doing a variety of software programming and services for the Indian as well as the global market. My vision, objective and passion is to make these developers healthy and wealthy -- healthy from a technological perspective and wealthy to make sure they do more innovation. Whatever we need to do in the form of trainings, infrastructure, business opportunities etc. we will continue to provide. My vision is to make sure that our organization continues to make the developers of this country more productive, more technologically competent and, hopefully, produce lots of heroes from here. For more information about Intel® Software Network visit www.intel.com/software.

Developers are Key to Success of Windows Phone 7
When Apple launched the iPhone, Microsoft’s Steve Ballmer ridiculed the lack of a keyboard. Little did he know this gadget would become the best selling phone in a league of its own. In an attempt...

Google Coming to your Idiot Box?
Google is set to invade your living room as the company puts its finishing touches on technology that lets software developers build applications for televisions in much the same way as they do for...



