[Z] graphics cards for accessing the Internet: Exploring GPU Web applications in the future

Source: Internet
Author: User

With the introduction of unified rendering technology since the dx10 era, the importance of graphics in the entire computer has gradually surpassed the CPU. The advantages of parallel architecture allow the GPU to meet large-scale computing needs, while the stream technology of NVIDIA Cuda and AMD gives the GPU the soul to complete large-scale computing, previously, applications that only use CPU for computing can now use GPU for computing, greatly reducing the burden on the CPU, and GPU becomes more and more important.

In fact, CPU and GPU are not the product of transistor, but there is a big difference in architecture. The GPU uses a parallel computing architecture that can process multiple tasks within the same unit of time. For example, a gpu with 240 stream processors can theoretically process 240 tasks at the same time, while a single core CPU can only process one task at a time. In recent years, CPU is also moving towards parallel computing, such as hyper-Threading Technology, dual-core and even multi-core processing technology. However, due to architecture restrictions, it is not likely that the CPU needs to develop into a multi-core architecture.

Now, all walks of life have begun to use GPU as the computing core. Compared with the CPU, the GPU computing capability can reach several or even dozens of times of the CPU, in some special cases, it can even reach hundreds of times. However, the cost of GPU is similar to that of CPU, or even lower than that of CPU. This is why the Chinese super computer "Tianhe 1st" uses 5120 GPUs as the acceleration processor.

In addition to the need for GPU in a large-scale computing application environment, GPU is also very important for ordinary PCs. Currently, both nvidia and AMD GPUs support parallel computing and both have dedicated video decoding modules. For example, when you watch HD videos, using GPU for "hard decoding" can make the CPU usage very low or even negligible. In some daily applications such as PhotoShop image processing and video transcoding, using GPU for acceleration can also greatly improve the efficiency. We have had a lot of such content before.Test.

21 century is the age of Internet and information, and many applications must be completed on the Internet. For example, we can see videos shared by netizens from around the world through YouTube, through Facebook, we can make friends with Internet users around the world. Through Twitter, we can directly Leave a message or even chat with President Obama. Through Flickr, We can browse photos shared by netizens around the world.

Currently, all applications on the Internet are processed by the CPU. However, as the application becomes more and more complex, the computing requirements are also increasing. At the same time, there are more and more multimedia applications on the web page, and more complex, such as HD Image Rendering, HD video playback, and so on, and even play 3D games on the web page in the future, obviously, these applications rely only on the CPU, Which is unreliable and GPU must be involved.

YouTube, the world's largest video sharing website, has provided P of high-definition videos since. To play smoothly, the CPU is obviously a huge challenge, to popularize this feature, YouTube must also obtain full GPU support. Some time ago, Adobe released the Flash Player 10.1 beta version, supporting Flash video GPU hardware acceleration, paving the way for the popularization of p hd Network Videos.

In addition to video images, GPU acceleration is also required for webpage text processing. We know that the operating system and every text on the webpage can be generated after rendering, and CPU resources need to be consumed during rendering. If the text is not rendered properly, it may cause text blurring, ugly fonts, and other problems. Although we have not yet felt such a problem, text rendering will become very important in the future Web-based office suites.

Most of the web content is presented to users through a browser. As we mentioned earlier, the complexity of Web applications is getting higher and higher, and GPU acceleration is urgently needed. At the end of last monthMicrosoftAt the pdc09 conference, Microsoft's next-generation browser ie9 will support GPU hardware acceleration.

However, Firefox, another major browser vendor, directly added support for GPU hardware acceleration in the latest Firefox 3.7. The beta version of ie9 will not be available until the second half of next year, which inevitably makes Microsoft very embarrassed. At the same time, it also shows that GPU acceleration has become a necessary function for Web browsers in the future.

Both the hardware acceleration functions in ie9 and Firefox are implemented through directwrite and direct2d. For Web developers, neither of these two technologies needs to be rewritten.CodeTo directly support GPU hardware acceleration.

Directwrite is a brand new text rendering engine. It is mainly used to make the text smoother and more beautiful without the appearance of sertices and edges. Compared with GDI text rendering, directwrite can provide horizontal and vertical anti-aliasing functions, while the former can only provide horizontal smooth functions. Direct2d is a new graphics API. It mainly uses GPU to accelerate the drawing of webpages, including the scaling of webpage images.

In fact, in addition to Firefox and ie9, Google's Chrome browser product planned to add the directwrite function as early as October. However, it has some compatibility problems with Chrome's sandbox technology, the project is still in the R & D stage.

Most of the Network Videos are based on the Flash technology released by Adobe. This technology has a high compression ratio for videos, but the quality can still be justified. However, as people have higher requirements on the definition of online videos, for example, we have mentioned that YouTube has launched a network video of P, so high-definition online video playback must be rendered by GPU.

In fact, Flash Player 10.0 has already started to support GPU acceleration, but it does not rely entirely on GPU, and even a large part of the processing still relies on the CPU.

The processing process of Web flash is divided into three parts: target video processing-synthesis processing-screen rendering. In flash 10.0, the two major parts of target video processing and merging are still completed by the CPU. GPU is only the last step-screen rendering. Obviously, this depends heavily on the CPU, and the GPU performance is not fully utilized.

In the latest release of Flash 10.1, Adobe added support for full hard decoding of flash. All three parts of Web Flash are accelerated using GPU, both nvidia and AMD graphics cards are supported, which greatly reduces CPU usage.

For Web developers, Silverlight is a very familiar technology. Silverlight is a cross-browser, cross-customer platform technology that can design, develop, and publish multi-media experience and rich interaction (RIA, network Interaction of rich Interface ApplicationProgram. Its nature is similar to that of Adobe Flash, but it is more flexible in development. Currently, the main competitor of Silverlight is Adobe Flash.

Microsoft has added several key technologies in Silverlight 3, including support for more Media Encoding formats, such as H. 264, AAC, etc.; graphics computing uses GPU acceleration to effectively reduce the CPU burden; perspective-based 3D technology, that is, putting 2D objects in 3D space; introduction of shader concept, GPU is also used for acceleration.

Silverlight's support for GPU acceleration also reflects Microsoft's recognition of the importance of GPU in future Web applications. As a Web Media standard that Microsoft has created over the past two years, the success of Silverlight depends largely on how much code is simplified and how the user's hardware resources can be better called. However, GPU acceleration can meet the requirements of the latter.

In fact, other Microsoft products also focus heavily on GPU acceleration, including the ie9 browser we mentioned earlier, direct compute in the Windows 7 operating system, and DirectX application interfaces, all of this is the performance that Microsoft attaches importance to GPU.

We have mentioned that GPU acceleration is required for 2D and online video playback on the web. However, the content of 2D and flash acceleration is nothing more than what we will talk about next. The next technology will make it a reality to play 3D games on the Web. Of course, GPU acceleration is needed.

First, let's take a look at the o3d API launched by the network giant Google. o3d is a webpage-basedOpen Source3D application interface, the technology can work independently outside the operating system, fully web-based. That is to say, this API is not restricted by the platform. Whether you use Windows, Linux, or Mac operating systems, it is supported because it does not rely on the operating system to run.

As shown in, through the o3d application interface, you can directly implement 3D rendering in the browser. The smoothness of rendering depends entirely on the computing power of your GPU. After a simple test, the Rendering scenario of the 8400 m gs video card in the notebook is very difficult. However, when the 9800gtx video card in the desktop is used for rendering, the entire scenario is very smooth.

Currently, Google o3d still uses plug-ins.InstallIf you are interested in the browser, you can install the plug-ins on Windows and Mac platforms. The plug-ins on Linux platforms must be compiled manually. At the same time, Google also provides a large number of o3d demo, you can test it on your own.

Similar to o3d described earlier, webgl is also a Web-based graphical application interface. Currently, WebKit kernel browsers, including safari, Google Chrome, and Mozilla Firefox, all have built-in webgl technology.

Webgl is a 3D drawing standard that allows JavaScript and OpenGL ES 2.0 to be combined by adding a javascript binding of OpenGL ES 2.0, webgl can provide hardware 3D accelerated rendering for HTML5 canvas, so that web developers can use the system graphics card to display 3D scenes and models more smoothly in the browser, you can also create complex navigation and data visualization. Obviously, webgl technical standards eliminate the trouble of developing specialized rendering plug-ins for webpages. They can be used to create website pages with complex 3D structures, or even design 3D Web games.

Webgl perfectly solves the two problems of the existing web interactive 3D animation: First, it uses HTML scripts to create web interactive 3D animation without the support of any browser plug-ins; second, it uses the underlying graphics hardware acceleration function for graphic rendering, which is achieved through a unified, standard, cross-platform OpenGL interface.

Whether it is Google's o3d or khronos's weggl, it is undoubtedly necessary to move the 3D content from the local to the web page for running, both of which require GPU acceleration to achieve better results. There seems to be some competition between the two, but we can believe that running a large 3D game on the web page will not be a dream in the next two or three years.

A large number of technologies and future applications fully reflect a trend, that is, GPU will play a very important role in future Internet applications, just as weArticleAs the title says, even on the Internet, computers with GPUs and computers without GPUs may have a completely different experience. Because the content on the Internet will be updated with the development of technology, when the computer does not have a GPU, it will not work.

On the other hand, it is precisely because GPU provides better computing performance and lower costs that this series of technologies have developed fundamentally. We have reason to believe that the content on the Internet will become more refined in the future, P of online videos, the ability to play 3D games in a browser, the lack of support for 3D games on the Linux platform, and the diversity of WEB text performance will all be achieved, all of this is due to the combination of hardware and software of GPU and 3D Web technology. GPU-accelerated web content can not only enrich Internet content, but also greatly reduce the CPU burden, when purchasing a computer, you can directly use a lower-specification CPU, but at least one independent graphics card is required. However, it is not a waste for users who purchase mid-and high-end CPUs. Using GPU to accelerate idle CPU resources can be used to process more and other applications. For example, while enjoying HD videos on the Internet, while using idle CPU to perform large File compression, and so on.

As GPU applications become wider and wider, the large-scale adoption of GPU acceleration in the future Internet applications has become a necessity. All we have to do is wait for the arrival of the new Internet era created by GPU.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.