Become a GPU Architect

Source: Internet
Author: User
Tags documentation
reprint: Become a GPU architect(2012-10-27 10:59:02) reprint
Tags: technology Computer architecture processor algorithm graphics
The following articles derive from:
Http://blog.renren.com/share/313938359/4576928475#nogo


I am also not a serious GPU architecture, but I have a long time to write their own experience. GPU Architecture design is actually a multi-disciplinary area of intersection, especially today this gpgpu dynasties, more need to absorb the knowledge of the relevant fields. This includes computer architecture, graphics algorithms, compiler technology, integrated circuits, as well as a variety of flow computing applications, such as five parts ~ ~ I will be divided into five posts finished ~ ~. In fact, I mainly focus on computer architecture, graphics algorithms, in these two areas is still two knives. Other areas are not familiar to when not two knives ~ ~ so I think I will write the first two chapters, respectively, the computer architecture, graphics algorithms, books. Other aspects welcome Daniel to Supplement ~ ~ ~


The first stage step into the first to do a CPU architect ~

The first is computer architecture (Computer architecture), because either the GPU or the CPU is ultimately the processor (Processor), and computer architecture is a course that explains how the processor works and how to balance the parameters of each module. The main bibliography is as follows: (reading order such as numbering, bibliography can be interspersed according to interest in it ~)

1. Computer composition and Design: Hardware/software interface
Computer Organization & design:the Hardware/software Interface
This book does not say much, the composition principle is the Professional foundation course of the architecture, this book must read.

2. "Large RISC processor design--design VLSI core with descriptive language Verilog"
The reading of this book includes an advanced book without translation, which teaches you how to group an industry-level CPU. Can get a lot of hardware on the quantitative analysis of knowledge.

3. Quantification Method Fourth Edition English edition
Reading should include appendices and exercises as well as reference papers, which are the domain of the architecture of the Bible and do not read enough to learn about architecture.

4. Modern Processor design:fundamentals of superscalar processors
"Modern processor design--Scalar Processors Foundation"
This book also has to do exercises, this book explains many examples of processor design, to be combined with the book after the reference paper one by one read.

5. Chip multiprocessor architecture:techniques to improve throughput and latency
This book explains how the architecture of a Web server-oriented transaction processor should be weighed, and the research in the book comes from Sun Niagara first-hand. Very representative ~ book is not thick, can be used as a novel to see.

6. Embedded computing:a VLIW approach to architecture, compilers and Tools
As VILW's masterpiece, must read, in fact, VLIW support can be counted in the compiler field, because the VLIW processor in the architecture is not much difficult to understand. But here as a preview, later to compile the technology learning can be easier.

7. VLSI Digital Signal processing systems:design and implementation
This book as the most classic DSP inside the micro-architecture textbook, must read. This book is very engineering, not too much nonsense, writing efficiency is very high ~ ~ ~

8. Stream Processor Architecture
This book is mainly Stanford's summary of the flow processor design, most of them went to AMD or NV to do the architecture, for the study of GPGPU, this book must be read. From the research that has been done so far, GPGPU is still difficult to perform the general computing task beyond the flow calculation.

9. Parallel Computer Architecture A hardware/software approach (Second Edition)
This book as a framework for the expansion of learning materials, for parallel computer explanation is quite simple, although the age of some, but the technology is not advanced and backward. To Bo concept about to take, in the future can be thick accumulation of thin hair ~ ~. I did not read through the book, so I left a regret, resulting in a lack of knowledge of the parallel architecture, lack of quotations. Have time to make up in the future ~ ~

10.See MIPS RUN Second RD
MIPS Architecture Perspective (version 2nd)
This book is not really about how the CPU is designed, but it explains how the CPU interacts with the software, and as a complementary reading material is very good. Even software engineers recommend reading.

In addition, a variety of bus technology, after all, bus technology in the future of the processor and processor array has an indispensable significance. It is important to understand that, including Axi, OCP, PCI, and PCI-E, you can then look at some books and papers on the on-Chip network (Network on Chip) (mainly paper. )

In addition to the grid and other technology-related books and papers to read a lot. The architecture of the book is still quite a lot, the number of many, orientation, including the current very hot low power technology is linked to the processor architecture, but also dedicated to network transport network processor, fault-tolerant technology, reconfigurable technology. A foot down bottomless ... A life-long learning. So to set a good goal before reading, do not look at what NB to learn anything, back and forth to the hills. In fact, reading is always a person to start the stage, to be proficient after a large number of reading papers, especially the ACM paper, do not read the paper will not be able to do a good research results, because only relatively stable and old theory to write books back. The latest technology is written in the paper. You can save yourself a lot of time by reading more papers.



PS: Also recommend a few books that are representative of the meaning of the book
Computer architecture Techniques for power-efficiency must read. The future calculation is embedded, so low power calculation is the future trend ~ ~ ~
Fault Tolerant Computer architecture research on fault-tolerant architecture must be read, the future of the processor will be built on the fault-tolerant chip network on the basis of the technology for the manycore is essential.
Network Processors_architectures, protocols and platforms network processor, you can observe another architecture ~ ~:>
Virtual Machines:versatile platforms for Systems and processes VM technology, in fact, can be counted in the compilation system, but here is also involved in a number of architectural things, this is the key to future cloud computing, must read ~ ~.

The second step is to figure out how the target application is a group of features based on existing architecture knowledge.

CPU as a general-purpose processor does not need to be optimized for a particular application, but it is not the case for graphics processors. As the name suggests, the GPU is also a processor, but he is a specially optimized processor for graphics. So do not understand the graphics algorithm is no way to design the GPU, you understand the more in-depth graphics algorithm, do the application to do more, the more on the GPU where should be optimized to understand more in-depth. Of course, we also through the OPENGL/D3D specification is able to design a full function of the GPU, so that in the case of graphics algorithms do not know how to design the GPU. But for advanced GPU Architect, it is impossible for you to not participate in OGL/D3D spec customization meetings (although Microsoft's openness is debatable ...). )。 If you do not understand the algorithm, then for more advanced GPU architecture to support raytracing or other global illumination, it is impossible to talk about .... It's also impossible to design a low-power, high-performance embedded GPU, because you don't know where to cut it, and where to keep it, let alone what hardware is cut ... So in this step, we need a lot of comprehensive understanding of the graphics algorithm. It is not only a graphics algorithm based on GPU, but also a mathematical graph algorithm which is verified by CPU in traditional sense. This requires relatively deep mathematical skills, so that math is not good, there is no need to do very good GPU Architect.

"If you want to engage in more professional graphics Reseracher (graphics), you can read this book directly, http://www.opengpu.org/bbs/viewthread.php?tid=2335&extra= Page=1 "

First of all, given the interest in graphics, it's best to have a brilliant graphical effect after the code is written, so I recommend learning from the OGL/D3D API first. In fact, OGL and D3D API basically functional equivalence, now OGL 4.0 out, I would prefer to use OGL as an entry tool, there is no other reason, just OGL does not include Microsoft that set of COM programming Foundation, such as very easy.

1.OpenGL superbible 4ed
"OpenGL Super Treasure" (4th edition)
This is the OGL introductory tutorial that I think is best written. Although still in the 2.x phase, but enough to get started. There are a lot of examples in the book that you can run around and see the effect.


2.OpenGL Shading Language 2ed
This book has a Chinese version, but I strongly don't recommend it, unless you don't like learning the language. The previous book mainly explained the use of APIs, but not much for GLSL. So I'm using this book to lay the foundation. Shader programing is the key of modern graphics hardware, there are quite a lot of algorithms rely on Shader, must give enough attention.


3. "OpenGL Programming Guide 7ed"
This book is commonly known as Little Red Book, there is no need to specialize, but as a tool dictionary book is still very necessary, check the API use. In fact, the best API lookup or look at OGL spec~~~:> and to design GPU, Ogl/d3d Spec is also to see a three or four times. (By the way, Microsoft's D3D spec/ref code is required and Microsoft signed NDA to get the hand, I remember the Zhejiang office of CAD secretly got the document is the source code, and later leaked, but also by Microsoft letter to warn a company ~ ~)

For D3D programming to see Microsoft's SDK documentation is enough and do not have to toss to buy a book, Microsoft SDK documentation is the best books, but also free ~:〉


4.3D Graphics Programming: Using Direct3D 10/9 and OpenGL 2.0
The next step is to practice a variety of graphics algorithms and effects, here first pick a simple book contact, this book is very industrialized, are relatively practical in the game of technology. Although there are many mistakes, learning is enough. So far, your study of graphics is the first stage, basically completed the introduction. The next step is to see a series of intermediate tutorials.


5.GPU Gems 1/2/3
This is a book published by the NV group, which can be said to be a collection of papers, including various areas of the GPU, written very well, which three books must be read. This is the premise of reading a graphic paper.


6. Graphics Gems Series
This series of books, although some old, but also very classic, a lot of understanding of the former design, the former graphics algorithm, to help understand the evolution of CG and the main direction of recent years to optimize ~ ~

7.ShaderX Series
At the request of my friend, I have not had a chance to read the book, I am out ... Know that friends can evaluate ~

8.real-time Rendering 2/3ed
This book is absolutely necessary to read ... The book in the GPU architecture status comparable to the CPU in the "quantitative method" that book, including reference and other papers must also look, are carefully selected by the author, very classic ~ ~ for their own algorithm is only very open.

9. Procedural Elements for Computer Graphics (2E)
The basic algorithm of Computer Graphics (2nd edition of the original book)
For GPU Architecture design, this book is also absolutely necessary to read. This book experiment must one by one pass, this book explains the bottom of the graphics algorithm, these algorithms do not rely on any hardware, although the ages, but in real-time graphics OGL rely on most of the graphics algorithms are not also the 780 's, including Z/s-buffer/edge function Rasterization/vertex Transform/ground shading and so on ... So this book must be read.

Basically, this step completes the intermediate stage of the graphics study. In the next advanced stage, get a lot of exposure to the GI (global illumination) knowledge. And a lot of reading papers, about GI, there are indeed a lot of books can be read, such as the very famous PBRT, there are many radiometric algorithms and volume rendering of books. Of course, I'm not at this level yet, so I can't write more bibliographies. But in any case, the development of graphics can be faster than computer architecture, not read the paper, basically look at the book is useless. So must read a large number of reading papers, including the most basic SIGGRAPH papers and so on ~ ~ In addition, modeling modeling is also a very NB direction, it is best to learn to learn, otherwise people say tessellation, do not know behind the mathematical theory and hardware simplification will appear in where, that's lame %......

My level is limited, can enumerate is basically the domestic can find of books. Finally, to add that mathematics must learn well, without mathematics there is no graphic learning. A point to the plane distance can not calculate the engineer is not very NB of GPU architect ~ ~

The third step, compile technology and runtime layer: Link algorithm and hardware

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.