JPH0814853B2 - Load balancing processing method for parallel ray tracing - Google Patents
Load balancing processing method for parallel ray tracingInfo
- Publication number
- JPH0814853B2 JPH0814853B2 JP61212203A JP21220386A JPH0814853B2 JP H0814853 B2 JPH0814853 B2 JP H0814853B2 JP 61212203 A JP61212203 A JP 61212203A JP 21220386 A JP21220386 A JP 21220386A JP H0814853 B2 JPH0814853 B2 JP H0814853B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- sub
- processing
- ray tracing
- pixels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Multi Processors (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
Description
【発明の詳細な説明】 [概要] 本発明は光源から発せられた光が物体に当たって反射
し、視点に至る際に、物体と視点との間の通路上に設け
た2次元スクリーン上に当該光の輝度に対応する明るさ
を持つ点を描くことにより物体の2次元像を得る所謂レ
イトレーシング(光線追跡法)に係り、並列コンピュー
タにおけるアンチエイリアッシング処理(表示画像にお
ける境界部分のギザギザした表示を滑かにする画像処
理)を含むレイトレーシングの分散実行において、並列
コンピュータ各プロセッサ上の負荷のばらつきを解決す
るため、アンチエイリアッシング処理で行われる1画素
における数点のサブ画素の算出処理を、数個のプロセッ
サで分担しあうことにより各プロセッサ上の負荷の均等
化を図るものである。DETAILED DESCRIPTION OF THE INVENTION [Outline] When the light emitted from a light source hits an object and is reflected to reach a viewpoint, the light is reflected on a two-dimensional screen provided on a passage between the object and the viewpoint. It relates to so-called ray tracing (ray tracing method) in which a two-dimensional image of an object is obtained by drawing a point having a brightness corresponding to the brightness of the In distributed execution of ray tracing including smoothing image processing), in order to solve the load variation on each processor of the parallel computer, the calculation processing of several sub-pixels in one pixel, which is performed in the anti-aliasing processing, By sharing the load among several processors, the load on each processor is equalized.
[産業上の利用分野] 本発明は並列コンピュータにおけるアンチエイリアッ
シング処理を含むレイトレーシングの分散処理方法に関
する。TECHNICAL FIELD The present invention relates to a ray tracing distributed processing method including anti-aliasing processing in a parallel computer.
アンチエイリアッシング処理を含むレイトレーシング
は現実感溢れる画像を生成する優れたアルゴリズムであ
るが、膨大な処理時間を要するのが欠点とされている。
そのため近年レイトレーシング処理の画素間独立性に着
目し、複数のプロセッサ処理を分散させる並列レイトレ
ーシングが試みられるようになってきた。Ray tracing including anti-aliasing is an excellent algorithm for generating realistic images, but it is disadvantageous in that it requires enormous processing time.
Therefore, in recent years, attention has been paid to the inter-pixel independence of ray tracing processing, and parallel ray tracing in which a plurality of processor processings are dispersed has been attempted.
この場合各プロセッサに分散される処理が均一となる
ような分散方法が必要とされる。In this case, a distribution method that makes the processing distributed to each processor uniform is required.
[従来の技術] 従来の並列コンピュータ上のアンチエイリアッシング
処理を含むレイトレーシングの分散処理方法を第4図に
示す。図中、(イ)はスクリーン画面を示し、分割され
た画素を16台の並列コンピュータで分担している様子を
示している。同図(ロ)は0から15番までの番号が付さ
れた16台の並列コンピュータを示し、(イ)図中の数字
は該当コンピュータを示している。同図(ハ)は1画素
を4分割し、A,B,C,Dの4つのサブ画素とした場合を示
す図である。[Prior Art] FIG. 4 shows a conventional ray tracing distributed processing method including anti-aliasing processing on a parallel computer. In the figure, (a) shows a screen screen, in which the divided pixels are shared by 16 parallel computers. The same figure (b) shows 16 parallel computers numbered from 0 to 15, and the numbers in the figure (a) show the corresponding computers. FIG. 3C is a diagram showing a case where one pixel is divided into four to form four sub-pixels A, B, C, and D.
従来の方式では、レイトレーシングが画素独立に計算
できることに着目して画素単位に各プロセッサを割り当
て、処理作業を均等分散させていた。In the conventional method, each processor is assigned to each pixel and the processing work is evenly distributed, paying attention to the fact that ray tracing can be calculated independently for each pixel.
しかしながら、アンチエイリアッシング処理では表示
画像上での物体境界のギャザリングを除去するために、
同図(ハ)に示すように1画素より更に細かい仮想画素
(サブ画素)を1画素について4個とり、この4個のサ
ブ画素の平均値を1画素の値として表示している。その
ため1画素内のサブ画素同志は平均値をとることとな
り、サブ画素単位で完全独立処理とはできない。当該画
素を担当したプロセッサが画素内のサブ画素を逐次計算
し平均値を表示した後で、次の担当画素の処理に移るよ
うになっている。However, in order to remove the gathering of the object boundary on the display image in the anti-aliasing process,
As shown in FIG. 3C, four virtual pixels (sub-pixels) finer than one pixel are taken for each pixel, and the average value of these four sub-pixels is displayed as the value of one pixel. Therefore, sub-pixels within one pixel take an average value, and complete independent processing cannot be performed in sub-pixel units. The processor in charge of the pixel sequentially calculates the sub-pixels in the pixel and displays the average value, and then shifts to the processing of the next pixel in charge.
[発明が解決しようとする問題点] 従来の並列コンピュータ上のアンチエイリアッシング
処理を含むレイトレーシングの分散処理方法では、画素
を担当したプロセッサが画素内のサブ画素を逐次計算し
平均値を表示した後で、次の画素担当プロセッサへと処
理を移していたため、鏡面体などのような部分的に処理
の大きい画素を多く担当したプロセッサと、背景を多く
担当したプロセッサとの間では、処理分散のばらつきが
ある。即ち、アンチエイリアッシング処理では単純に1
画素当たりのサブ画素数分だけ倍増されてしまうという
問題があった。[Problems to be Solved by the Invention] In a conventional ray tracing distributed processing method including anti-aliasing processing on a parallel computer, a processor in charge of a pixel sequentially calculates sub-pixels in the pixel and displays an average value. After that, since the processing was moved to the next pixel processor, the processing distribution between the processor that was in charge of a large number of pixels with a large amount of processing such as a specular body and the processor that was in charge of a large amount of background. There are variations. That is, in the anti-aliasing process, simply 1
There is a problem that the number of sub-pixels per pixel is doubled.
本発明はこのような点に鑑みてなされたもので、アン
チエイリアッシング処理で行われる1画素の下の数点の
サブ画素算出の処理を複数のプロセッサで分担させるよ
うにすることにより、各プロセッサ上の負担を均等化す
ることのできる並列レイトレーシングの負荷分散処理方
法を提供することにある。The present invention has been made in view of the above circumstances, and a plurality of processors share the processing of calculating sub-pixels of several points under one pixel, which is performed in the anti-aliasing processing. It is an object of the present invention to provide a load balancing processing method of parallel ray tracing capable of equalizing the above load.
[問題点を解決するための手段] 第1図は本発明方法の原理を示すフローチャートであ
る。本発明は、並列プロセッサ使用によりアンチエイリ
アッシング処理を含むレイトレーシング処理を実行させ
る並列レイトレーシングの負荷分散処理方法において、
先ず画像を構成する1画素を複数のサブ画素に分割し
(ステップ)、各サブ画素毎に現在幾つのサブ画素の
平均値であるのかを示すステータスメモリを設け(ステ
ップ)、各プロセッサを画素並列にすると共に、アン
チエイリアッシング処理のサブ画素単位に割り当て(ス
テップ)、各プロセッサは、前記ステータスメモリの
内容に従い、個別に処理結果を平均する(ステップ)
ようにしたことを特徴としている。[Means for Solving Problems] FIG. 1 is a flowchart showing the principle of the method of the present invention. The present invention provides a load balancing processing method for parallel ray tracing, which executes ray tracing processing including anti-aliasing processing by using a parallel processor,
First, one pixel forming an image is divided into a plurality of sub-pixels (step), a status memory indicating how many sub-pixels are currently the average value is provided for each sub-pixel (step), and each processor is pixel-parallelized. In addition, the sub-pixels of the anti-aliasing processing are assigned (step), and each processor averages the processing results individually according to the contents of the status memory (step).
It is characterized by doing so.
[作用] 第2図は本発明によるプロセッサの処理分担の状況を
示す図である。図において、実線で囲んだ部分が表示画
素に対応し、そのおのおのについて破線で分割した4つ
の部分がアンチエイリアッシングのサブ画素である。即
ち、1表示画素は4つのサブ画素で構成されている。本
発明の方法ではアンチエイリアッシング処理を含むレイ
トレーシングの負荷をプロセッサ均一なものとするた
め、アンチエイリアッシング処理のサブ画素単位にプロ
セッサを割り当てている。又、ビデオメモリには各画素
のRGB情報の他に現在幾つのサブ画素の平均値なのかを
示すステータスメモリを各画素単位に持っている。[Operation] FIG. 2 is a diagram showing a state of processing sharing of the processor according to the present invention. In the figure, the portion surrounded by the solid line corresponds to the display pixel, and the four portions divided by the broken line for each of them are anti-aliasing sub-pixels. That is, one display pixel is composed of four sub-pixels. In the method of the present invention, in order to make the load of ray tracing including the anti-aliasing processing uniform among the processors, the processor is assigned to each sub-pixel unit of the anti-aliasing processing. In addition to the RGB information of each pixel, the video memory has a status memory indicating the average value of the number of sub-pixels for each pixel at present.
各プロセッサは担当したサブ画素の計算を終えると、
ビデオメモリのターゲット画素から現在幾つのサブ画素
の平均値なのかを示すステータスメモリの内容を読み込
む。“0"ならそのまま計算結果をビデオメモリのターゲ
ット画素に書き込む。“1"ならビデオメモリのターゲッ
ト画素の内容と計算結果との平均をとり、“2"ならビデ
オメモリのターゲット画素の内容を2倍して計算結果の
値を加算して3で割るといった処理をして、サブ画素数
に応じた平均値を逐次蓄積していく。When each processor finishes the calculation of the sub-pixel in charge,
From the target pixel of the video memory, read the contents of the status memory indicating how many subpixels are currently averaged. If it is "0", the calculation result is written as it is to the target pixel of the video memory. If "1", the content of the target pixel of the video memory and the calculation result are averaged, and if "2", the content of the target pixel of the video memory is doubled, the value of the calculation result is added and divided by 3. Then, the average value according to the number of sub-pixels is sequentially accumulated.
本発明では、アンチエイリアッシング処理のサブ画素
単位に各プロセッサへ処理を分散させることにより、ア
ンチエイリアッシング処理を含むレイトレーシングの処
理を画素単位で各プロセッサに振り分けるようにしてい
た従来の方法で問題となっていた映り込みの多い画素を
多く担当したプロセッサとそうでないプロセッサとの負
荷のばらつきがサブ画素数の倍数だけ拡大されるという
点を、改善することができる。In the present invention, by distributing the processing to each processor in sub-pixel units of the anti-aliasing processing, the ray tracing processing including the anti-aliasing processing is distributed to each processor in pixel units. It is possible to improve the point that the load variation between the processor that is in charge of a large number of pixels with a lot of reflections and the processor that does not, is increased by a multiple of the number of sub-pixels.
[実施例] 以下、図面を参照して本発明の実施例を詳細に説明す
る。第3図は本発明の方法を実現するための一実施例を
示す要部構成図である。図において、21は16台用意され
たプロセッサ(0から15の番号で示される)群である。
22は画素アドレス選択回路、23は色・サブ画素選択回
路、24はビデオメモリである。16台の各プロセッサは、
図示しないホストコンピュータの制御の下に、レイトレ
ーシングプログラムとデータが与えられると共に、画素
アドレス選択回路22より担当するサブ画素アドレスが与
えられ、それぞれ独自に、処理を進めて行く。各プロセ
ッサでは、担当のサブ画素計算を終了すると、色・サブ
画素選択回路23を介してビデオメモリ24から当該画素に
おいてサブ画素平均回数が現在幾つであるかを読み取
る。[Example] Hereinafter, an example of the present invention will be described in detail with reference to the drawings. FIG. 3 is a main part configuration diagram showing an embodiment for realizing the method of the present invention. In the figure, 21 is a group of 16 processors (designated by numbers 0 to 15).
22 is a pixel address selection circuit, 23 is a color / sub-pixel selection circuit, and 24 is a video memory. Each of the 16 processors
Under the control of a host computer (not shown), a ray tracing program and data are given, and a sub-pixel address in charge is given from the pixel address selection circuit 22, and the processing proceeds independently. In each processor, when the assigned sub-pixel calculation is completed, the color / sub-pixel selection circuit 23 is used to read from the video memory 24 the current average number of sub-pixels in the pixel.
読み込んだ平均回数が“0"の場合には、そのまま前
記計算結果をビデオメモリ24に書き込む。同時にサブ画
素平均回数として“1"を書き込んでおく。読み込んだ
平均回数が“1"の場合は、ビデオメモリ24の当該画素の
内容(データ)と計算結果をとりその値をビデオメモリ
に書き込む。同時にサブ画素平均回数として“2"を書き
込んでおく。If the average number read is "0", the calculation result is written in the video memory 24 as it is. At the same time, "1" is written as the average number of sub-pixels. When the average number of times of reading is "1", the content (data) of the pixel in the video memory 24 and the calculation result are obtained, and the value is written in the video memory. At the same time, "2" is written as the average number of sub-pixels.
読み込んだ平均回数が“2"の場合は、ビデオメモリ
の内容を2倍してこれに計算結果を加算し、この計算結
果を3で割って平均値を求めこれをビデオメモリに書き
込む。同時にサブ画素平均回数として“3"を書き込んで
おく。When the average number of times of reading is "2", the content of the video memory is doubled and the calculation result is added to this, and the calculation result is divided by 3 to obtain an average value, which is written in the video memory. At the same time, “3” is written as the average number of sub-pixels.
読み込んだ平均回数が3の場合は、ビデオメモリの
内容を3倍してこれに計算結果を加算し、この計算結果
を4で割って平均値を求めこれをビデオメモリに書き込
む。4回平均した値が書き込まれるとその画素の処理は
完了する。When the average number of times of reading is 3, the content of the video memory is tripled, the calculation result is added to this, and the calculation result is divided by 4 to obtain an average value, which is written in the video memory. When the value averaged four times is written, the processing of the pixel is completed.
尚、サブ画素の内容はRGB情報であるが、平均値を求
める処理は各RGB信号ごとに行われる。The content of the sub-pixel is RGB information, but the process of obtaining the average value is performed for each RGB signal.
また、上記の処理について各プロセッサはいかなる順
番で行っても構わない。その順番は通常ホストコンピュ
ータにより管理される。このようにして、1画素を複数
のプロセッサで分担処理することによりプロセッサの負
荷のばらつきを解消することができる。Further, each processor may perform the above processing in any order. The order is usually managed by the host computer. In this way, by sharing the processing of one pixel by a plurality of processors, it is possible to eliminate variations in the load on the processors.
尚、実施例では1画素の分割数を4分割としたが、他
の分割数としてもよい。又、本発明は必ずしもカラー画
像に限定されるものではなく、モノクローム画像にも適
用することができる。Although the number of divisions of one pixel is four in the embodiment, it may be another number. Further, the present invention is not necessarily limited to color images, but can be applied to monochrome images.
更に、各サブ画素を担当するプロセッサは実施例のよ
うに16台に限るものではなく、その台数は任意に増減し
てもよい。Furthermore, the number of processors in charge of each sub-pixel is not limited to 16 as in the embodiment, and the number may be arbitrarily increased or decreased.
[発明の効果] 以上詳細に説明したように、本発明によれば、アンチ
エイリアッシング処理を含むレイトレーシングの処理を
画素単位で各プロセッサに振り分けるようにしていた従
来の方法において生じていた負荷のばらつきがサブ画素
数の倍数だけ拡大されるという問題を解決するばかりで
なく、負荷の大きさが殆ど同じである画素内のサブ画素
を複数のプロセッサで分担することからアンチエイリア
ッシング処理を行わないレイトレーシングに対しても負
荷の均等率の面で改善されることになる。[Effects of the Invention] As described in detail above, according to the present invention, the load generated in the conventional method in which the ray tracing process including the anti-aliasing process is distributed to each processor in pixel units. Not only solves the problem that the variation increases by a multiple of the number of sub-pixels, but also does not perform anti-aliasing processing because multiple processors share sub-pixels within pixels that have almost the same load size. It will also be improved in terms of load equalization ratio for ray tracing.
更に、従来の方法ではサブ画素の計算が終了して平均
値を算出するまでは画像を表示しなかったために画素表
示の進行が遅れていたが、本発明の方法ではサブ画素の
1つの画素について計算が終了するごとに即座に画像の
表示が行われ、且つサブ画素の計算回数が進むにつれて
順次アンチエイリアッシングが施された画像に変わって
行くという利点がある。Further, in the conventional method, the image display is delayed because the image is not displayed until the calculation of the sub-pixel is completed and the average value is calculated. However, in the method of the present invention, one pixel of the sub-pixels is displayed. There is an advantage that the image is displayed immediately after the calculation is completed, and the image is sequentially changed to the image subjected to anti-aliasing as the number of times the sub-pixel is calculated.
第1図は本発明方法の原理を示すフローチャート、第2
図は本発明によるプロセッサの処理分担の状態を示す
図、第3図は本発明の方法を実現するための一実施例を
示す要部構成図、第4図は従来の並列コンピュータ上の
アンチエイリアッシング処理を含むレイトレーシングの
分散処理方法を示す図である。 図において、 21……並列プロセッサ群、22……画素アドレス選択回
路、23……色・サブ画素選択回路、24……ビデオメモリ
である。FIG. 1 is a flowchart showing the principle of the method of the present invention.
FIG. 3 is a diagram showing a state of processing sharing of a processor according to the present invention, FIG. 3 is a configuration diagram of an essential part showing an embodiment for realizing the method of the present invention, and FIG. 4 is an anti-ariy on a conventional parallel computer. It is a figure which shows the distributed processing method of ray tracing including an ashing process. In the figure, 21 ... Parallel processor group, 22 ... Pixel address selection circuit, 23 ... Color / subpixel selection circuit, 24 ... Video memory.
フロントページの続き (56)参考文献 特開 昭61−133482(JP,A) 特開 昭59−65888(JP,A) 特開 昭62−260276(JP,A) 特開 昭61−86876(JP,A)Continuation of the front page (56) Reference JP-A-61-133482 (JP, A) JP-A-59-65888 (JP, A) JP-A-62-260276 (JP, A) JP-A-61-86876 (JP , A)
Claims (1)
ッシング処理を含むレイトレーシング処理を実行させる
並列レイトレーシングの負荷分散処理方法において、 画像を構成する1画素を複数のサブ画素に分割し(ステ
ップ)、 各サブ画素毎に現在幾つのサブ画素の平均値であるのか
を示すステータスメモリを設け(ステップ)、 各プロセッサを画素並列にすると共に、アンチエイリア
ッシング処理のサブ画素単位に割り当て(ステップ
)、 各プロセッサは、前記ステータスメモリの内容に従い、
個別に処理結果を平均する(ステップ) ことを特徴とする並列レイトレーシングの負荷分散処理
方法。1. A load distribution processing method of parallel ray tracing for executing ray tracing processing including anti-aliasing processing by using a parallel processor, wherein one pixel constituting an image is divided into a plurality of sub-pixels (steps). A status memory is provided for each sub-pixel to show how many sub-pixels are currently averaged (step), each processor is arranged in parallel with each other, and each sub-pixel for anti-aliasing processing is allocated (step). According to the contents of the status memory
A load balancing processing method for parallel ray tracing, characterized by averaging the processing results individually (steps).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61212203A JPH0814853B2 (en) | 1986-09-09 | 1986-09-09 | Load balancing processing method for parallel ray tracing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61212203A JPH0814853B2 (en) | 1986-09-09 | 1986-09-09 | Load balancing processing method for parallel ray tracing |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6367685A JPS6367685A (en) | 1988-03-26 |
JPH0814853B2 true JPH0814853B2 (en) | 1996-02-14 |
Family
ID=16618628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61212203A Expired - Lifetime JPH0814853B2 (en) | 1986-09-09 | 1986-09-09 | Load balancing processing method for parallel ray tracing |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0814853B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9250966B2 (en) * | 2011-08-11 | 2016-02-02 | Otoy, Inc. | Crowd-sourced video rendering system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5965888A (en) * | 1982-10-08 | 1984-04-14 | 株式会社日立製作所 | Color control system for color display |
JPS6186876A (en) * | 1984-10-03 | 1986-05-02 | Fujitsu Ltd | Display processing system for 3-dimensional object |
JPS61133482A (en) * | 1984-12-04 | 1986-06-20 | Agency Of Ind Science & Technol | Multiprocessor for graphic display |
-
1986
- 1986-09-09 JP JP61212203A patent/JPH0814853B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS6367685A (en) | 1988-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4225861A (en) | Method and means for texture display in raster scanned color graphic | |
US7969444B1 (en) | Distributed rendering of texture data | |
US5748178A (en) | Digital video system and methods for efficient rendering of superimposed vector graphics | |
EP0910047B1 (en) | Full-scene antialiasing using improved supersampling techniques | |
US6204859B1 (en) | Method and apparatus for compositing colors of images with memory constraints for storing pixel data | |
RU2312404C2 (en) | Hardware acceleration of graphical operations during construction of images based on pixel sub-components | |
US5301038A (en) | Image processor and method for processing pixel data | |
US7333119B1 (en) | System and method for virtual coverage anti-aliasing | |
CN105955687B (en) | Image processing method, device and system | |
US7612784B2 (en) | Image processor and method, computer program, and recording medium | |
JPH09245179A (en) | Computer graphic device | |
JPH0668676B2 (en) | How to improve the image quality of a CRT display | |
US6377273B1 (en) | Fast area-coverage computing method for anti-aliasing in graphics | |
JP3328741B2 (en) | Display device for anti-aliased images | |
CN115330986B (en) | Method and system for processing graphics in block rendering mode | |
US6054993A (en) | Chroma-keyed specular texture mapping in a graphics processor | |
KR20060007054A (en) | Method and system for supersampling rasterization of image data | |
JP3174342B2 (en) | Multi-level to binary level raster shape converter | |
US7616200B1 (en) | System for reducing aliasing on a display device | |
US20030020712A1 (en) | Rendering process | |
EP0486195A2 (en) | Computer graphics system | |
JPH0814853B2 (en) | Load balancing processing method for parallel ray tracing | |
US6445392B1 (en) | Method and apparatus for simplified anti-aliasing in a video graphics system | |
EP0486194A2 (en) | Memory system | |
JPH0651937A (en) | Data processing system and method of data control |