JP7095852B2 - データ集約型視覚化動作におけるgpu性能を向上する方法およびシステム - Google Patents

データ集約型視覚化動作におけるgpu性能を向上する方法およびシステム Download PDF

Info

Publication number
JP7095852B2
JP7095852B2 JP2019503288A JP2019503288A JP7095852B2 JP 7095852 B2 JP7095852 B2 JP 7095852B2 JP 2019503288 A JP2019503288 A JP 2019503288A JP 2019503288 A JP2019503288 A JP 2019503288A JP 7095852 B2 JP7095852 B2 JP 7095852B2
Authority
JP
Japan
Prior art keywords
feature information
cpu
feature
data
identifier
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.)
Active
Application number
JP2019503288A
Other languages
English (en)
Other versions
JP2019533211A (ja
Inventor
ゾウ、ニンイー
ウェン、シャオ
マ、ルイシャン
ジャン、イェ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2019533211A publication Critical patent/JP2019533211A/ja
Application granted granted Critical
Publication of JP7095852B2 publication Critical patent/JP7095852B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3667Display of a road map
    • G01C21/3676Overview of the route on the road map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Automation & Control Theory (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Instructional Devices (AREA)

Description

[関連出願の相互参照]
本願は、2016年9月12日に出願された、発明の名称が"データを処理する方法およびシステム"である中国特許出願第201610818816.4号、および、2017年8月30日に出願された、発明の名称が"データ集約型視覚化動作におけるGPU性能を向上する方法およびシステム"である米国特許出願第15/690,593号の優先権の利益を主張し、それらの両方は、それらの全体が参照によって本明細書に組み込まれる。
本開示はコンピュータアーキテクチャの分野に関し、特に、視覚化動作におけるGPU処理を向上させる方法およびシステムに関する。
科学および技術の進歩と共に、eコマース、電気通信、交通、および同様のものなど、多くの分野において、連想性データが存在する。連想性データとは、始点と終点との間で連想的関係を有するデータを意味する。
例えば、出荷元住所および出荷先住所は、eコマースの分野において1個の連想性データである。発呼側アドレスおよび被呼側アドレスは、電気通信の分野において1個の連想性データである。差出住所および宛先住所もまた、運輸の分野において1個の連想性データである。
連想性データをより直観的にするべく、連想性データはマップ上で視覚化され得る。現在、"フライトライン"または"軌跡"視覚化が、連想性データを表示して視覚化結果を表現するために一般に採用されている。他の方法もまた、連想性データを視覚化して視覚化結果を取得するために用いられてよいが、本明細書では詳細には列挙されない。
連想性データを視覚化した結果を、当業者がより明らかに理解することを可能にすべく、例示および説明が以下に提供される。図1Aを参照すると、"フライトライン"方式が、視覚化結果を表示するように用いられる。図1Aから理解されるように、例えば、出荷元住所および出荷先住所を表すように、2つの終点が用いられ、説明された住所の間の対応関係を表すように、曲線が用いられる。
図1Bを参照すると、"軌跡"方式が、連想性データを視覚化した視覚化結果を表示するように用いられる。図1Bから理解されるように、2つの終点は、出荷元住所および出荷先住所を表すように用いられ、軌跡が、説明された住所の間の対応関係を表すように用いられる。
連想性データの始点から終点への方向を表示すべく、線分の異なる位置において異なる色が追加されてよい。そして始点から終点までの方向は、線分の色合いの変化によって示される。例えば、線分の色に関して流星効果が設定される。始点に最も近い部分は最も暗い色を有し、他方で、終点に最も近い部分は最も明るい色を有する(図示されない)。
現在、連想性データは、中央演算処理装置(CPU)およびグラフィックス処理ユニット(GPU)を含む、画像処理デバイスを用いて視覚化される。CPUが複数個の連想性データを受信する場合、データ転送はCPUとGPUの間で複数回行われる必要がある。すなわち、CPUとGPUの間の通信の回数は、連想性データの個数と整合する。
しかしながら、画像処理デバイスのハードウェアの限界のため、CPUとGPUの間の通信の回数が比較的大きい場合、GPUのフレームレートは減少しがちであり、それによってGPUの表示性能に影響を及ぼす。[発明の概要]
この点を考慮して、本開示の実施形態は、CPUとGPUの間の通信のインスタンスの数が、連想性データの視覚化の最中に減少する、データを処理する方法およびシステムを提供する。
一実施形態において、中央演算処理装置(CPU)においてデータフレームを受信する段階であって、データフレームは複数個の連想性データを含む、段階と、CPUによって、複数個の連想性データに対応する特徴情報を識別する段階と、CPUによって、特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成する段階と、CPUによって、グラフィックス処理ユニット(GPU)に全体特徴情報を送信する段階とを備える方法が開示される。
別の実施形態において、データフレームを受信し、データフレームは複数個の連想性データを含み、複数個の連想性データに対応する特徴情報を識別し、特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成し、GPUに全体特徴情報を送信するように構成されたグラフィックス処理ユニット(GPU)および中央演算処理装置(CPU)を備えるシステムが開示される。
以下の有利な効果は、上記の実施形態によって達成され得る。
本開示の実施形態は、データを処理する方法を提供し、全体特徴情報を取得するように複数個の特徴情報が結合されて、それによってCPUとGPUの間で全体特徴情報を送信する。
現在のシステムにおいて、CPUは、複数個の特徴情報を転送するためには、GPUと繰り返し通信しなければならない。しかしながら、本開示の実施形態において、複数個の特徴情報が1つの全体特徴情報に結合されるので、CPUがGPUと1つの通信の送信を行うことのみが必要となる。
したがって、本出願において、CPUとGPUの間の通信頻度が大きく減少し得、それによって、GPUのフレームレートが向上し、GPUの表示性能への影響が減少する。
本開示の複数の実施形態または現在のシステムにおける技術的解決法をより明らかに示すべく、実施形態または現在のシステムの説明において用いられる必要がある図面が、以下に簡略に紹介されるであろう。以下に説明される図面は、本開示の単にいくつかの実施形態にすぎず、また、当業者は、創造的な努力なしでこれらの図面に従って他の図面を取得することができる。
本開示のいくつかの実施形態による表示線の2つの実装である。 本開示のいくつかの実施形態による表示線の2つの実装である。
本開示のいくつかの実施形態による、データを処理するシステムの図である。
現在のシステムにおいて用いられる、データを処理する方法を示すフロー図である。
本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。 本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
本開示のいくつかの実施形態による、視覚化結果の図である。 本開示のいくつかの実施形態による、視覚化結果の図である。
本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
本明細書において開示される実施形態は、図面を参照して以下で明らかに、かつ完全に説明されるであろう。説明された実施形態は、開示の複数の実施形態のうち全てではなく、むしろ単にいくつかにすぎない。本開示の実施形態に基づいて、創造的な努力を行うことなしに当業者によって取得される全ての他の実施形態が、本開示の範囲内に入るものとする。
当業者が本開示の実施形態を明らかに理解することを可能にすべく、連想性データを視覚化するように用いられる、データを処理するシステムが、第1に紹介される。
図2は、本開示のいくつかの実施形態による、データを処理するシステムの図である。
データを処理するシステムは、データ供給デバイス100およびデータ処理デバイス200を備える。データ処理デバイス200は、中央演算処理装置(CPU)およびグラフィックス処理ユニット(GPU)を備える。示されるように、CPUはGPUと通信可能に接続される。データ供給デバイス100は、データ処理デバイス200に連想性データを送信する。
本開示の実施形態は、複数の応用シナリオに適用されてよく、データ供給デバイスおよび連想性データは、異なる応用シナリオに応じて異なってよい。応用シナリオの例を用いることによって、例示が以下に提供される。
例えば、本開示の実施形態は、eコマースの分野に適用され得、注文の出荷元住所および出荷先住所が視覚化され得る。この状況において、データ供給デバイス100は、eコマースシステムの注文サーバであってよく、連想性データは、注文に関連づけられた出荷元住所および出荷先住所である。一実施形態において、注文サーバは、複数の群の出荷元住所および出荷先住所を含む。したがって、注文サーバは複数の群の出荷元住所および出荷先住所を、データ処理デバイス200に送信してよい。
別の例として、本開示の実施形態は、電気通信の分野に適用され得、電話呼の発呼側アドレスおよび被呼側アドレスが視覚化され得る。この例において、データ供給デバイス100は電気通信システムのトラフィックサーバであってよく、連想性データは発呼側アドレスおよび被呼側アドレスである。一実施形態において、トラフィックサーバは複数の群の発呼側アドレスおよび被呼側アドレスを含む。したがって、トラフィックサーバは、複数の群の発呼側アドレスおよび被呼側アドレスを、データ処理デバイス200に送信してよい。
別の例として、電気通信の分野において、ショートメッセージの送信側アドレスおよび受信側アドレスもまた、視覚化され得る。この例において、データ供給デバイス100は電気通信システムのショートメッセージサーバであってよい。例えば、本開示の実施形態は、インスタントメッセージングソフトウェアの分野においてもまた適用され得る。インスタントメッセージングソフトウェア(DINGTALKおよびALITALKおよび同様のものなど)において、複数のインスタントメッセージングメッセージが存在する。インスタントメッセージングソフトウェアの送信側アドレスおよび受信側アドレスが視覚化され得る。この状況において、データ供給デバイス100は、インスタントメッセージングソフトウェアのサーバであってよい。
本開示の実施形態は、また、例えば、メールの送信側および受信側を視覚化し得る。この状況において、データ供給デバイス100は電子メールサーバであってよい。
別の例として、本開示の実施形態は、車両(自動車、電車、バス、航空機、戦闘用車両、船舶、自転車など)の出発住所および目的住所が視覚化され得る、運輸の分野において適用され得る。この状況において、データ供給デバイス100は、運輸システムのナビゲーションサーバであってよく、連想性データは出発住所および目的住所である。一実施形態において、ナビゲーションサーバは出発住所および終点住所の複数の群を含む。したがって、ナビゲーションサーバは出発住所および終点住所の複数の群を、データ処理デバイス200に送信してよい。
本開示の実施形態は、例えば、ゲームの分野に適用され得、ゲームにおける発砲、矢および同様のものなどの武器の出発点および目標点が、視覚化され得る。この例において、データ供給デバイス100は、ゲームシステムのゲームサーバであってよく、連想性データは、出発点および目標点である。一実施形態において、ゲームサーバは出発アドレスおよび終点アドレスの複数の群を含む。したがって、ゲームサーバは始点および終点の複数の群を、データ処理デバイス200に送信してよい。
本開示の実施形態は、例えば、公共の場所における群移動への技術分野に適用され得る。この例において、本開示の実施形態は、公共の場所(例えば、市場、景勝地、バス停留所、列車駅など)における群衆の移動の出発点および目標点を視覚化し得る。本開示の実施形態は、動く物体、および同様のものの、出発住所および目的住所を視覚化し得る。この状況において、データ供給デバイス100は、群衆の出発点および目標点を認識するデータサーバであってよく、連想性データは、出発点および目標点である。データサーバは、出発住所および終点住所の複数の群を含むことが理解され得る。したがって、データサーバは、始点および終点の複数の群を、データ処理デバイス200に送信してよい。
別の例として、本開示の実施形態はまた、武器の発射の出発点および目標点を視覚化する戦闘技術の分野に適用され得る。この例において、データ供給デバイス100は、武器の発射の出発点および目標点を認識するサーバであってよく、連想性データは出発点および目標点である。
別の例として、本開示の実施形態は、空気の流れ、台風または風向の起点および終点を視覚化する天気の分野に適用され得る。この例において、データ供給デバイス100は、気象条件における出発点および目標点を認識するサーバであり得る。
本開示の実施形態は、別の例のために、天文の分野における惑星移動の起点および終点に適用され得る。この例において、データ供給デバイス100は、惑星移動条件における出発点および目標点を認識するサーバであってよい。
本開示の実施形態は、上の例において提供されて示されたシナリオに限定されないことが、理解され得る。本開示の実施形態において提供される技術は、視覚化された物体が、それの移動の出発点および目標点を有する状況において、適用され得る。
データ処理デバイス200は、本明細書においてさらに詳細に説明されるように、連想性データを受信および処理して、マップ上に連想性データを視覚化する目標を達成するように用いられる。
現在のシステムにおける、データ処理デバイス200による連想性データの視覚化の処理は、図3に関連して以下に紹介され、したがって、当業者は、現在のシステムにおいて存在する技術的問題のより良い理解を得るであろう。
現在のシステムにおいて、データ処理デバイス200によって各連想性データを処理する処理は、表示線データを識別する処理が異なる応用シナリオにおいて異なることを除いて、整合する。現在のシステムの動作は、例として、連想性データとしてeコマースの分野における出荷先住所および出荷元住所の群を用いることによって、以下に示される。
図3は、現在のシステムを用いてデータを処理する方法を示すフロー図である。
段階S301:CPUは、データ供給デバイスによって送信された連想性データを受信し、次に、連想性データの座標変換を実行して、起点座標および終点座標を取得する。
出荷元住所は"杭州"であり、出荷先住所は"上海"であると想定し、連想性データ上における三次元座標変換を実行した後、関連アドレスにおける起点座標x、y、z(すなわち、出荷元住所"杭州"の座標)が取得されてよく、関連アドレスにおける終点座標x、y、z(すなわち、出荷先住所"上海"の座標)が取得されてよい。本明細書において、x、y、z、x、y、およびzは、具体的な座標値である。
段階S302:CPUは、起点座標および終点座標に基づいて表示線データを構築する。
当業者は、"フライトライン"および"軌跡"を含んでよい表示線のタイプを予め判断してよい。フライトラインは、直線、放物線または破線、および同様なものであってよく、一方、"軌跡"は始点から終点までの物体の移動の軌跡の線である。
プロセッサは、表示線のタイプに対応する予め設定された関数を選択してよい。次に、予め設定された関数がCPUに格納される。この段階において、CPUは予め設定された関数を呼び出して、起点座標および終点座標に従って計算を実行して、表示線データを取得してよい。.
例えば、表示線のタイプが放物線である場合、CPUは、
Figure 0007095852000001
など、放物線タイプに対応する予め設定された関数を予め格納する。
第1に、起点座標および終点座標の間の中点座標(
Figure 0007095852000002

Figure 0007095852000003

Figure 0007095852000004
)が算出される。
起点座標(x,y,z)、終点座標(x,y,z)および中点座標

Figure 0007095852000005

Figure 0007095852000006

Figure 0007095852000007
)は、a、bおよびcの具体的な値を算出するように
Figure 0007095852000008
に代入され、それによって、連想性データに対応する表示線データを判断する。
Figure 0007095852000009
であると想定すると、表示線データは
Figure 0007095852000010
である。a、bおよびcの具体的な値は、単なる例示にすぎず、実際の状況を表すものではない。
上記の放物線方程式は、比較的容易な例である。実際の用途において、地面への全ての放物線的な移動が、重力によって影響されることを示すように、法線ベクトル、すなわち、重力の方向が、フライトラインに関して設定される。法線ベクトルはnormalで表される。地面への放物線的な移動の軌跡が球状である場合、球の中心の座標を(0,0,0)と想定すると、normalの正規化されたベクトルは、(
Figure 0007095852000011

Figure 0007095852000012

Figure 0007095852000013
)である。
下に開く放物線
Figure 0007095852000014
が予め設定される。本明細書において、λは定比例分割点を表し、kHeightは高度比例係数を表す。次に、
Figure 0007095852000015
が起点座標(x,y,z)および終点座標(x、y、z)の定比例分割点に追加され、3D放物線、すなわち、表示線データを形成する。
上のセクションは、表示線データを判断する2つの具体的な実装を単に提供するにすぎない。予め設定された関数は、表示線によって変化してよく、具体的な予め設定された関数は、実際の状況にによって判断されてよく、本明細書に限定されないことが、理解されるであろう。
段階S303:CPUは表示線データに基づいて特徴情報を識別する。
特徴情報は、具体的には、位置配列および色配列を含む。具体的には、複数の位置点は、表示線データから識別されてよく、各位置点は位置座標および明度に対応する。複数の位置点の位置座標が、特徴情報の位置配列を形成し、複数の位置点の明度が、特徴情報の色配列を形成する。
特徴情報を識別する処理が、以下に詳細に紹介される。CPUは、位置関数を用いることによって表示線データにおける位置配列を識別し、色関数を用いることによって位置配列における各位置点の明度を識別し、それぞれの位置点の明度を結合して色配列を形成する。位置配列における位置点の数は、
Figure 0007095852000016
などのように、定まっている。次に、位置関数の目的は、表示線データから
Figure 0007095852000017
個の位置点の座標値を取得することである。好ましくは、位置関数は、表示線データから
Figure 0007095852000018
個の位置点の座標値を等距離に取得してよく、もちろん、位置関数はまた、表示線データから
Figure 0007095852000019
個の位置点の座標値をランダムに取得するように用いられてもよい。
位置配列を識別した後、色関数は
Figure 0007095852000020
個の位置点に関して異なる色を設定するように用いられ、したがって、始点から終点への方向を表すように異なる色を用いる。すなわち、色配列はまた
Figure 0007095852000021
個の明度を含み、各明度は位置配列における位置点に対応する。
段階S304:CPUはGPUに特徴情報を送信する。
段階S305:GPUは、描画ソフトウェアを用いることによって、特徴情報に関する視覚化動作を実行し、視覚化結果を取得する。GPUは、予め設定されたマップで位置配列におけるそれぞれの位置点の座標を識別し、それぞれの位置点の色配列において対応する色を設定する。次に、Canvasベースの描画規格またはSVG描画規格によって、表示線がそれぞれの位置点に基づいて表示され(具体的な実装の処理は、本開示の実施形態に対して重大ではなく、したがって、本明細書で繰り返して説明しない)、表示線の異なる部分は異なる色を有する。
上記実施形態において、各連想性データは、1個の特徴情報にのみ対応し、連想性データを表すやり方は、特徴情報(位置配列および色配列)のみに関して比較的容易であることが、理解され得る。連想性データを鮮明に表示すべく、連想性データに対応する幾何学的情報が追加されてよく、幾何学的情報は、形状配列、曲線特徴値、および幅特徴値、および同様のものなどの、情報を含む。
形状配列は、表示される物体の形状を表すように用いられる。例えば、連想性データが注文の差出住所および宛先住所である場合には、マップ上に注文を鮮明に表示すべく、例えば、小包を表す立方体といった、"注文"を表す形状を表示線上に表示してよい。このとき、形状配列は立方体の形状を表す配列である。
別の例において、連想性データがゲームにおける武器の場合には、武器の形状を鮮明に表示すべく、形状配列が表現のために用いられてよい。例えば、武器が"投げ矢"の場合、始点から目標点までの"投げ矢"の移動を表示する処理において、表示線上に"投げ矢"の形状を表示すべく、"投げ矢"の形状を表す位置点が形状配列に追加されてよい。
曲線特徴値は、表示線の弧半径を表すように用いられる。弧半径は、具体的な応用シナリオに応じて変化してよく、当業者によって予め設定されてよく、また、使用の最中に異なる条件に従ってプロセッサによって処理されてもよい。
例えば、注文の差出住所および宛先住所を例として取り上げる。なぜなら、差出住所および宛先住所の間の弧半径は予め設定されてよいからである。次に、それぞれの注文の差出住所および宛先住所の間の弧半径は、一致していてもよく、それによって整合性を保持する。異なる技術分野において、具体的な応用シナリオに関して、表示線をより適用可能とすることを可能にすべく、当業者は、表示線の曲線特徴値の大きさを変更し得る。
幅特徴値は、表示線の幅を表すように用いられる。上記曲線特徴値と同様に、特徴は調整できる特徴であり、異なる技術分野に関して適用可能であるように提供され、当業者によって調整できる。
一般的に言えば、幾何学的情報はCPUのストレージ空間に予め格納され、したがって、CPUはストレージ空間から連想性データに対応する幾何学的情報を直接抽出し得る。説明を容易にするために、特徴情報および幾何学的情報は、属性情報と称される。属性情報において、幾何学的情報が任意選択のコンテンツである一方、特徴情報は確実に不可欠なコンテンツである。具体的な実装の最中に、属性情報は、実際の状況に従って判断されてよい。
図3に示された上の処理は、データ処理デバイスによって1個の連想性データを処理する処理である。CPUが複数個の連想性データを受信する場合、各連想性データが、図3に示された処理に従って処理される。
CPUが1個の連想性データを受信する場合、データ通信が一旦CPUとGPUの間で実行される必要があり(1個の特徴情報の送信)、CPUが複数個の連想性データを受信する場合、データ通信がCPUとGPUの間で複数回行われる必要がある(複数個の特徴情報の送信)ことが理解され得る。
しかしながら、データ処理デバイスのハードウェアの限界のため、CPUとGPUの間の通信の回数が比較的大きい場合、GPUのフレームレートは減少しがちであり、それによってGPUの表示性能に影響を及ぼす。したがって、本開示の実施形態は、データ処理デバイスのハードウェア構造を変更することなしに、データ処理デバイスが直面する問題を解決する方法を提供する。
これらの欠点を是正する、本開示の実施形態が、以下に紹介される。
現在のシステムにおいて、CPUがデータフレームにつき多数回GPUと通信する理由は、データフレームにおいて取得される特徴情報ごとに、CPUとGPUの間で一回の通信を行うためである。したがって、データフレームにおいて算出された特徴情報の個数が比較的大きい場合、CPUとGPUの間の通信の回数は対応して大きくなる。
CPUとGPUの間の通信の回数を低減させるべく、本開示の実施形態は以下の解決方法を提供する。CPUは、全体特徴情報を取得するように複数個の特徴情報を結合して、次に、全体特徴情報をGPUに送信する。
例えば、現在のシステムにおいては、i個の特徴情報に対して、CPUはGPUとi回通信しなければならない。本開示の実施形態においては、i個の特徴情報が、1個の全体特徴情報に結合され得、したがって、CPUはGPUと一回通信するのみでよい。したがって、CPUとGPUの間の通信の回数は大きく減少し得る。
全体特徴情報を取得するように複数個の特徴情報を結合して、次に全体特徴情報をGPUに送信するCPUの技術的特徴に関して、本開示の実施形態は、以下に紹介される4つの並列な実装を提供する。
第1の実装において、CPUは1つのデータフレームにおいて一回GPUと通信する。
図4Aは、本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
段階S401:CPUは1つのデータフレームにおいて複数個の連想性データを取得し、連想性データに対応する属性情報を識別し、各属性情報は少なくとも特徴情報を含む。
属性情報が幾何学的情報を含む場合、それぞれの連想性データに対応する、それぞれの幾何学的情報が、CPUのストレージ空間において取得される。
連想性データに対応する特徴情報を識別する処理は、本明細書においてさらに詳細に説明される。
CPUにおける特徴情報の個数が定義されていない場合において、CPUは1つのデータフレームに関して任意の個数の連想性データを取得し、各連想性データに対応する特徴情報を識別する。
しかしながら、GPUの表示性能の理由で、特徴情報に対応する表示線は、無制限にレンダリングされることができない。したがって、構築され得る特徴情報の個数は、CPUに予め設定された数に設定され得る。この実施形態において、GPUは一部の個数の特徴情報を構築し得るので、残りの数が、CPUによって加えて構築され得る特徴情報の個数を表すように用いられる。残りの数は、この一部の数未満の、予め設定された数に等しい。
したがって、CPUは、1つのデータフレームにおいて複数個の連想性データを受信した後に、複数個の連想性データの数が残りの数より大きいかどうか、判定し得る。複数個の連想性データの数が残りの数より大きくない場合、それは、残りの数が十分大きく、特徴情報が各連想性データに関して構築され得る旨を示す。したがって、CPUは、複数個の連想性データにおいて、各連想性データに対応する特徴情報を識別し得る。
複数個の連想性データの数が残りの数より大きい場合、それは、残りの数が十分大きくなく、特徴情報が各連想性データに関して構築され得ない旨を示す。結果として、複数個の連想性データからいくつかの連想性データがスクリーニングされ、いくつかの連想性データの個数は残りの数より大きくない。CPUは、いくつかの連想性データにおいて、各連想性データに対応する特徴情報を識別し得る。
予め設定された数がCPUに設定されていない場合において、この段階の詳細な説明は以下に与えられる。
1つのデータフレームにおいて、CPUは、データ供給デバイスによって送信された複数個の連想性データを取得する。実施形態を明らかに示すべく、
Figure 0007095852000022
個の連想性データが1つのデータフレームにおいて取得されることが想定される。
CPUは、各連想性データに図3の段階S301-S302を実行し、
Figure 0007095852000023
個の特徴情報、すなわち、特徴情報1、特徴情報2、特徴情報3、..、..、..、特徴情報
Figure 0007095852000024
、..、..、..、特徴情報
Figure 0007095852000025
を取得する。
特徴情報は、位置配列
Figure 0007095852000026
および色配列
Figure 0007095852000027
を含む。したがって、特徴情報1は位置配列
Figure 0007095852000028
および色配列
Figure 0007095852000029
を含む。特徴情報2は位置配列
Figure 0007095852000030
および色配列
Figure 0007095852000031
を含む。特徴情報3は位置配列
Figure 0007095852000032
および色配列
Figure 0007095852000033
を含む。......特徴情報
Figure 0007095852000034
は位置配列
Figure 0007095852000035
および色配列
Figure 0007095852000036
を含む。......特徴情報
Figure 0007095852000037
は位置配列
Figure 0007095852000038
および色配列
Figure 0007095852000039
を含む。
位置配列における位置点の数が
Figure 0007095852000040
であり、色配列における明度の数もまた
Figure 0007095852000041
であることを想定すると、次に、
Figure 0007095852000042
個の特徴情報があってよい。
Figure 0007095852000043
本明細書において、
Figure 0007095852000044
は特徴情報の識別子を表し、
Figure 0007095852000045
は位置点の識別子を表し、
Figure 0007095852000046
は位置点の位置座標を表し、
Figure 0007095852000047
は位置点の明度を表す。各明度は、RGB色フォーマットまたはCMYK色フォーマットで具体的に表されてよいが、本明細書に限定されない。
段階S402:CPUは、1個の全体特徴情報を取得するように、それぞれの特徴情報を結合する。
上記した例を続けると、それぞれの特徴情報は直接結合され、すなわち、
Figure 0007095852000048
個の特徴情報における位置配列が、全体位置配列を取得するように結合され、
Figure 0007095852000049
個の特徴情報における色配列が、全体色配列を取得するように結合され、1個の全体特徴情報が、次に取得される。
結合された全体位置配列は、[p111213 …p1j …p1m212223 …p2j …p2m313233 …p3j …p3m …pi1i2i3 …pij …pim ……pn1n2n3 …pnj …pnm]である。
結合された全体色配列は、[c111213 …c1j …c1m212223 …c2j …c2m313233 …c3j …c3m ……ci1i2i3 …cij …cim ……cn1n2n3 …cnj …cnm]である。
段階S403:CPUは全体特徴情報をGPUに送信する。
段階S404:GPUは全体特徴情報に基づいて視覚化動作を実行する。
属性情報が特徴情報のみを含む場合において、CPUは全体特徴情報(全体位置配列および全体色配列)をGPUに送信することのみが必要である。GPUは中央演算処理装置から送信された全体特徴情報を受信し、全体特徴情報に基づいてレンダリング処理を実行してレンダリングデータを取得し、レンダリングデータを用いることによって視覚化動作を実行して全体特徴情報に対応する視覚化結果を取得する。
属性情報が特徴情報および幾何学的情報を含む場合において、CPUは全体特徴情報(全体位置配列および全体色配列)およびそれぞれの幾何学的情報をGPUに送信する必要がある。GPUは、中央演算処理装置から送信された全体特徴情報およびそれぞれの幾何学的情報を受信し、全体特徴情報に基づいてレンダリング処理を実行してレンダリングデータを取得し、レンダリングデータを用いることによって視覚化動作を実行して視覚化結果を取得する。
Figure 0007095852000050
個の特徴情報に関して、現在のシステムにおいて、CPUはGPUと
Figure 0007095852000051
回通信する必要がある。本開示の実施形態において、
Figure 0007095852000052
個の特徴情報が、1個の全体特徴情報に結合されてよく、したがって、CPUがGPUと通信する必要は一回のみでよい。したがって、CPUとGPUの間の通信の回数は大きく減少し得る。
GPUが1個の特徴情報を1つの表示線に関連づけるので、本開示の実施形態における全体特徴情報に従った描画の実行後、GPUによって取得された視覚化結果は以下のとおりである。それぞれの位置点が1つの表示線上に描かれる(図5Aを参照のこと。そこの表示線は概略的な例示のみであり、実際の表示線を表さない)。すなわち、それぞれの連想性データに対応する表示線は共に接続される。
正常には、GPUの表示条件は図1Aまたは図1Bにあるように示されるべきである、すなわち、それぞれの連想性データに対応する表示線は分離されることが、理解され得る。したがって、第1の実装に従って取得された視覚化結果において、それぞれの連想性データに対応する表示線はいくつかの状態において明示的に区別され得ず、ユーザエクスペリエンスを劣ったものへと導く。したがって、第2の実装が以下に提供される。
第2の実装:CPUは1つのデータフレームにおいてGPUと一回通信し、それぞれの特徴配列はそれらの間に接続配列を有する。
図4Bは、本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
段階S411:CPUは1つのデータフレームにおいて複数個の連想性データを取得し、連想性データに対応する属性情報を識別し、各属性情報は少なくとも特徴情報を含む。具体的なプロセスは段階S401と同様であり、関連する開示はその全体が参照によって本明細書に組み込まれる。
段階S412:各隣接する対の特徴情報に接続情報が追加される。
一般に、それぞれの連想性データに対応する表示線は、各隣接する対の特徴情報に接続情報を追加することによって、明示的に区別され得る。
具体的には、2つの隣接する特徴情報に関して、開始位置における特徴情報の終点座標が取得され、より後の位置における特徴情報の起点座標が取得される。代替的に、開始位置における特徴情報の起点座標が取得され、より後の位置における特徴情報の終点座標が取得される。各隣接する対の特徴情報に関して用いられる方法が、使用の最中に整合していることを条件に、両者の方法も用いられてよいことが理解され得る。次に、接続線データが起点座標および終点座標に基づいて構築され、接続線データに対応する特徴情報が識別される。
例えば、連想性データ1(すなわち、特徴情報1)は対応する起点座標1(x11,y11,z11)および終点座標1(x12,y12,z12)を有する。連想性データ2(すなわち、特徴情報2)は、対応する起点座標2(x21,y21,z21)および終点座標2(x22,y22,z22)を有する。CPUは、次に、接続線データを判断するように、終点座標1(x12,y12,z12)および起点座標2(x21,y21,z21)を用いてよい。次に、接続線データに対応する特徴情報がさらに識別される。
正常には、起点座標および終点座標は、直線を構築するように用いられてよく、線形方程式が接続線データとして用いられてよい。線形方程式は2つの点の間の最も単純な接続線であるので、線形方程式が選択される。起点座標および終点座標を採用することによって他のタイプの接続線データが構築されてよいことは、言うまでもない(接続線を構築する原理と表示線を構築する原理は整合するので、段階S302において表示線を構築する処理が参照され得る)。
CPUは、接続線データを識別するとき、接続線データから
Figure 0007095852000053
個の位置点を取得するように位置関数を用いる。または、位置配列を構築するように、接続線データから
Figure 0007095852000054
個の位置点をランダムに選択する。次に、位置点の数は、位置配列において位置点の数と一致するであろう。次に、色配列が構築され、それもまた明らかに
Figure 0007095852000055
個の明度を含む。接続線データに対応する位置配列および色配列が、接続情報として識別される。
接続情報における色配列が、以下で注目されるであろう。接続線データに対応する接続配列の目的は以下のとおりである。GPUによって行われる描画の後に取得される描画結果において、それぞれの表示線(実際にまだ接続されている)が視覚的に分離され得るように、接続情報が2つの隣接する特徴情報に追加される。ユーザは次に、それぞれの連想性データに対応するそれぞれの表示線を視覚的に区別することができ得る。
図1Aおよび図1Bは最適な視覚化結果であることが理解され得る。すなわち、視覚化結果はそれぞれの表示線を表示するのみであり、他の線分を表示しない。図1Aおよび図1Bの効果を達成すべく、本開示の実施形態において、特徴情報の色配列においてそれぞれの明度の透明度は100%に設定されてよい。
このように、GPUによって行われる描画の後に取得される視覚化結果において、接続線は透明である。ユーザには接続線は見えず、連想性データに対応する表示線が見えるのみであり、それによって最適な視覚化結果を達成する(透明な接続線が破線によって表される図5Bを参照)。
確実に、最適な視覚化効果は、接続配列の色配列を透明色に設定することによって達成され得る。視覚化効果を減少させることは、接続情報の色配列が特徴情報の色配列と一致していないことが保証される限り、十分であろう。
接続情報と特徴情報の色配列が一致していない場合、ユーザは、GPUの視覚化結果において表示線と接続線を区別し得る。具体的な実装例が、異なる形態において生じ得る。例えば、黄色は特徴情報の色配列を表示するために用いられてよく、一方で、青色、緑色、および赤色および同様のものなどの他の色が、接続情報を表示するために用いられる。
代替的に、特徴情報の明度においてそれぞれの明度は一致していない(色配列におけるそれぞれの明度は、始点から終点への表示線の方向を表示するように、同じではない)。次に、それぞれの明度は、接続特徴における色配列と一致するように設定されてよい。
もちろん、接続情報の色配列と特徴情報の色配列が一致していないようにする他の実装が採用されてよく、それは本明細書に詳細には列挙されない。
それぞれの隣接する特徴情報において上記処理を実行した後、それぞれの接続情報が取得されてよい。具体的には、接続情報1が特徴情報1と特徴情報2の間に追加され、接続情報2が特徴情報2と特徴情報3の間に追加され、......接続情報
Figure 0007095852000056
が特徴情報
Figure 0007095852000057
と特徴情報
Figure 0007095852000058
の間に追加され、......接続情報
Figure 0007095852000059
が特徴情報
Figure 0007095852000060
と特徴情報
Figure 0007095852000061
の間に追加される。
段階S413:それぞれの特徴情報とそれぞれの接続情報は、1個の全体特徴情報を取得するように結合される。
接続情報の位置配列が文字wによって表され、接続情報の色配列が文字yによって表されると想定すると、この段階で取得された全体特徴情報は、以下のようになる。
結合された全体位置配列は、[p111213…p1j…p1m 11 12 …w 1j …w 1m 212223…p2j…p2m 21 22 …w 2j …w 2m 313233…p3j…p3m …pi1i2i3…pij…pim i1 i2 …w ij …w im ……pn1n2n3…pnj…pnm]である。
結合された全体色配列は、[c111213 …c1j…c1m 11 12 …y 1j …y 1m 212223 …c2j …c2m 21 22 …y 2j …y 2m 313233 …c3j …c3m ……ci1i2i3 …cij …cim i1 i2 …y ij …y im ……cn1n2n3 …cnj …cnm]である。
第2の実装における全体特徴情報と第1の実装の全体特徴情報との間の区別を読者がより良く理解することを可能にすべく、説明された全体特徴情報の間の差異をマークするために下線を採用する。下線は実際の実装には存在しない。
段階S414:CPUはGPUに全体特徴情報を少なくとも送信し、GPUは少なくとも全体特徴情報に基づいて、視覚化動作を実行する。詳細は段階S404において説明されており、本明細書では繰り返さない。
属性情報のみが特徴情報を含む場合には、CPUはGPUに全体特徴情報(全体位置配列および全体色配列)を送信することのみが必要であり、GPUは次に、描画規格に従って描画を実行する。属性情報が特徴情報および幾何学的情報を含む場合には、CPUはGPUに全体特徴情報(全体位置配列および全体色配列)およびそれぞれの幾何学的情報を送信する必要があり、GPUは次に、描画規格に従って描画を実行する。
第2の実装において、CPUとGPUの間の通信の回数が大きく減少し得るのみでなく、視覚化結果の表示の最中のユーザエクスペリエンスも、また向上し得る。
第1および第2の実装において、1つのデータフレームにおいてCPUとGPUの間で一回のみ通信が実行される。したがって、CPUとGPUの間の通信の回数は、第1および第2の実装において大きく減少され得る。
加えて、本開示の実施形態は、CPUがGPUと少ない回数だけ通信する、以下の2つの実装をさらに提供する。1つの通信のみが実行される状況と比較した場合は、CPUとGPUの間の通信の回数はなおも大きいにもかかわらず、現在のシステムにおける通信の大きな回数と比較した場合は、CPUとGPUの間の通信の数が大きく減少したことは、なおも利点を有する。
第3の実装において、CPUは1つのデータフレームにおいてGPUと複数回通信し、通信の回数は、特徴情報の個数よりはるかに小さい。
1つのデータフレームにおいて複数個の連想性データを取得するとき、複数個の連想性データは、複数個の連想性データ集合に分けられ、少なくとも1つの連想性データ集合は、複数個の連想性データにおいて2つ以上の個数の連想性データを含む。
CPUにおける特徴情報の個数が定義されていない場合には、CPUは1つのデータフレームに関して任意の個数の連想性データを取得し、任意の個数の連想性データを複数個の連想性データ集合に直接分ける。
GPUの表示性能の理由で、特徴情報に対応する表示線は無制限にレンダリングされ得ない。したがって、構築され得る予め設定された個数の特徴情報が、CPUに設定され得る。本開示の実施形態のこの実行処理において、GPUは一部の個数の特徴情報を構築し得るので、残りの数は、CPUによって加えて構築され得る特徴情報の個数を表すように用いられる。
Figure 0007095852000062
である。
したがって、CPUは、1つのデータフレームにおいて複数個の連想性データを受信した後に、複数個の連想性データの数が残りの数より大きいかどうか判断し得る。そうでない場合、複数個の連想性データが複数個の連想性データ集合に分けられる。そうである場合、複数個の連想性データからいくつかの連想性データをスクリーニングし、いくつかの連想性データの個数が残りの数より大きくない場合、いくつかの連想性データを複数個の連想性データ集合に分ける。
CPUにおける特徴情報の個数が定義されていない状況を例として用いる。CPUは1つのデータフレームにおいて
Figure 0007095852000063
個の特徴情報を取得することが想定される。CPUは、
Figure 0007095852000064
個の特徴情報を複数個の連想性データ集合に分ける。各連想性データ集合は少なくとも1個の特徴情報を含む。連想性データ集合の数は特徴情報の個数よりはるかに小さい。
次に、各連想性データ集合は、1つの連想性データ集合が1個の全体特徴情報に対応するという目標を達成するように第1の実装に従って処理される。具体的なプロセスは繰り返さない。
第4の実装において、CPUはGPUと複数回通信し、通信の回数は特徴情報の個数よりはるかに小さい。接続配列はそれぞれの特徴配列の間に存在する。
1つのデータフレームにおいて複数個の連想性データを取得するとき、複数個の連想性データは複数個の連想性データ集合に分けられ、少なくとも1つの連想性データ集合は、複数個の連想性データにおいて2つ以上の連想性データを含む。第3の実装を参照することによって、具体的なプロセスが参照され得、本明細書では詳細は繰り返さないが、それらの全体が参照によって組み込まれる。
CPUにおける特徴情報の個数が定義されていない状況を例として用いる。CPUは1つのデータフレームにおいて
Figure 0007095852000065
個の特徴情報を取得すると想定される。CPUは
Figure 0007095852000066
個の特徴情報を複数個の連想性データ集合に分ける。各連想性データ集合は少なくとも1個の特徴情報を含む。連想性データ集合の数は特徴情報の個数よりはるかに小さい。
次に、各連想性データ集合は、1つの連想性データ集合が1個の全体特徴情報に対応するという目標を達成するように第1の実装に従って処理される。その上で、連想性データ集合における各隣接する対の特徴情報の間に接続情報が存在する。具体的なプロセスは繰り返さない。
第3および第4の実装において、CPUはGPUに
Figure 0007095852000067
個の特徴情報を複数回送信し得、CPUとGPUの間の通信の回数は、連想性データ集合の数と同じである。連想性データ集合の数が特徴情報の個数よりはるかに小さいので、CPUとGPUの間の通信の回数もまた、第3および第4の実装においては大きく減少し得る。
上で紹介された4つの実装において、CPUはGPUに全体特徴情報を送信し、次に、全体特徴情報に基づいてレンダリング処理を実行してレンダリングデータを取得し、レンダリングデータを用いることによって視覚化動作を実行して全体特徴情報に対応する視覚化結果を取得する。
具体的には、GPUは、マップ上の全体特徴情報において位置配列および色配列を視覚化する描画ソフトウェアを利用してよい。現在のシステムにおいて、GPUは通常は、特徴情報を視覚化するCanvasベースの描画規格を採用し、GPUの現在のレンダリング効率はあまり高くない。
レンダリング効率を向上させるべく、本開示の実施形態は、特徴情報を視覚化するようにWebGL描画規格を利用する。WebGL描画規格はウェブクライアントの3D描画規格である。そのような図面技術規格は、JavaScript(登録商標)とOpenGL ES 2.0との組み合わせを可能にする。WebGLは、OpenGL ES 2.0のJavaScript(登録商標)バインドを追加することによって、HTML5 Canvasのためのハードウェア加速された3Dレンダリングを提供し得、それによって、GPUのレンダリング効率を向上させる。
以下の特徴情報を含む属性情報が、レンダリング処理を詳細に示す例として用いられる。1つのデータフレームにおけるCPUとGPUの実行処理から、第1および第2の実装において、1つのデータフレームにおいてGPUが全体特徴情報を受信した後、全体特徴情報が一回レンダリングされることが必要なことが知られ得る。
第3および第4の実装において、GPUは1つのデータフレームにおいて複数個の全体特徴情報を受信し得るので、複数個の全体特徴情報が複数回レンダリングされる必要がある。すなわち、GPUは1つのデータフレームにおいて少なくとも一回レンダリング処理を実行する。すなわち、GPUは各データフレームにおいてレンダリング処理実行する必要がある。
したがって、GPUのレンダリング効率を向上させるべく、本開示の実施形態は以下の技術的特徴を提供する。GPUは予め設定された全体特徴情報に基づいてプレレンダリングを実行して、レンダリングデータを取得する。
レンダリングデータは、主に全体特徴情報と、レンダリング処理の中間データとを含む。そのようなものとして、実際の実行処理において、GPUは、CPUから送信された全体特徴情報を受信するとき、全体特徴情報に基づいてレンダリングを実行する必要はなく、レンダリングデータにおける全体特徴情報を更新することのみによって、更新されたレンダリングデータを取得することができ、次に、更新されたレンダリングデータに基づいてマップ上に表示する。GPUが全体特徴情報に基づいてレンダリング処理を実行する必要はないので、GPUのレンダリング効率は大きく向上し得る。
プレレンダリング処理を実行する前に、本開示の実施形態におけるCPUの具体的な実装(第1の実装、第2の実装、第3の実装または第4の実装)が、当業者によって判断されるであろう。
第1の実装または第2の実装(CPUがGPUと一回通信する)が採用されたと判断される場合、データ処理デバイスにおいて第1のプレレンダリング処理が対応して採用される。第3の実装または第4の実装(CPUがGPUと複数回通信する)が採用されたと判断される場合、データ処理デバイスにおいて第2のプレレンダリング処理が対応して採用される。
第1のプレレンダリング処理および第2のプレレンダリング処理は、以下に詳細に紹介される。
データ処理デバイスにおけるGPUは、CPUから送信された全体特徴情報を受信し、全体特徴情報に対応する表示線をレンダリングするために用いられる。GPUのハードウェアの限界のため、GPUは、1つのデータフレームにおいて、多くとも所与の数の表示線しかレンダリングし得ない。
したがって、CPUが構築し得る表示線データの個数は、多くとも予め設定された数である旨が、または、構築され得る特徴情報の個数は、多くとも予め設定された数であり、予め設定された数は所与の数より小さい旨が、想定される。このようにして、GPUによってレンダリングされる表示線の数は、所与の数を超えない。
データ処理デバイスにおいて、1個の連想性データが1個の表示線データに対応し、1個の表示線データが1個の特徴情報(位置配列および色配列)に対応し、1個の特徴情報が1つの表示線に対応することが、図3に示された処理から見いだされ得る。したがって、多くとも予め設定された個数のみの表示線データが構築され得る場合には、CPUもまた対応して、多くとも予め設定された個数の特徴情報を構築し得る。
図6は、本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
段階S601:CPUは予め設定された個数の特徴情報を含む全体特徴情報を構築し、全体特徴情報を保存する。
CPUは予め設定された個数の特徴情報を構築する。特に、CPUは予め設定された個数の連想性データを受信し、段階S301からS303の処理に従って、予め設定された個数の特徴情報を取得する。
第1および第2の実装において、CPUは1つのデータフレームにおいてGPUと一回通信するので、CPUは予め設定された個数の特徴情報を結合し、全体特徴情報を取得する。
CPUは、図4Aが対応する第1の実装に従って、または、図4Bが対応する第2の実装に従って、予め設定された個数の特徴情報に対応する全体特徴情報を識別し得る。予め設定された数が10であると想定すると、CPUは10個の特徴情報を結合し、全体特徴情報を取得する。
段階S602:CPUは全体特徴情報に属性情報を追加する。
後の全体特徴情報の使用を容易にすべく、属性情報は全体特徴情報を追加される必要がある。具体的には、以下の処理を参照されたい。
(1)各特徴情報に関して特徴識別子が設定され、全体特徴情報における全ての位置点に関して位置点識別子が設定される。
CPUは、それぞれの特徴情報を区別するように、各特徴情報に関して異なる特徴識別子を設定する。特徴情報の予め設定された個数が10であると想定すると、次に、特徴情報1は特徴識別子1に対応し、特徴情報2は特徴識別子2に対応し、......、特徴情報10は特徴識別子10に対応する。
全体特徴情報は複数の位置点を含み、CPUは各位置点について位置点識別子を付与する。各特徴情報が8つの位置点を有すると想定すると、次に、各特徴情報の位置配列は8つの位置座標を有し、色配列は8つの色座標を有する。次に、全体特徴情報の全体位置配列は80の位置点の位置座標を有し、全体色配列はまた、80の位置点の明度を有する。
全ての位置点について異なる識別子を付与するようにアラビア数字が用いられる場合には、全体位置配列におけるそれぞれの位置点識別子は、連続して1、2、3、......80であり得、全体色配列のそれぞれの位置点は、また、連続して1、2、3、......80であり得る。また、それぞれの位置点について異なる識別子を付与するように順序づけられた文字が採用されてよい。確実に、識別は、本明細書には限定されない他の方法を用いてもまた実行され得る。
(2)各特徴情報に対応する位置点識別子集合が判断され、各特徴情報の特徴識別子と、それに対応する位置点識別子集合との間の対応関係が構築される。
上記した例を続け、例として特徴情報1を取り上げると、特徴情報1は位置点識別子1から位置点識別子8に対応し、次に、位置点識別子1から位置点識別子8は特徴情報1の位置点識別子集合1を構成する。次に、特徴情報1の特徴識別子1と位置点識別子集合1との間の対応関係が構築される。
(3)各特徴情報に対応する特徴識別子に関して、状態識別子が設定される。
状態識別子は、各特徴情報に対応する特徴識別子に追加され、状態識別子は特徴情報の使用状態を示すように用いられる。1個の特徴情報が用いられている場合、状態識別子は、その特徴情報がウェークアップ状態にある旨を示し、1個の特徴情報が用いられていない場合、状態識別子は、その特徴情報がスリープ状態にある旨を示す。
上記の対応関係が表1に明示される。
Figure 0007095852000068
(4)ウェークアップ特徴識別子集合およびスリープ特徴識別子集合が構築される。
スリープ特徴識別子集合における各特徴識別子に対応する特徴情報は、用いられていない状態であるスリープ状態にあり、ウェークアップ特徴識別子集合における各特徴識別子に対応する特徴情報は、使用中の状態であるウェークアップ状態にある。
予め設定された個数の特徴情報に関して、1個の特徴情報がウェークアップ状態にある場合、この特徴情報の特徴識別子がウェークアップ特徴識別子集合に追加される。1個の特徴情報がスリープ状態にある場合、この特徴情報の特徴識別子がスリープ特徴識別子集合に追加される。ウェークアップ特徴識別子集合にある特徴情報の個数とスリープ特徴識別子集合にある特徴情報の個数との合計は、予め設定された数に等しい。
段階S603:全体特徴情報がGPUに送信される。
段階S604:GPUは全体特徴情報に基づいてプレレンダリングを実行し、レンダリングデータを取得および保存する。
GPUは全体特徴情報に基づいてプレレンダリングを実行し、レンダリングされたレンダリングデータを取得し、次にレンダリングデータを保存する。レンダリングデータは2つの部分を含む。一方の部分は全体特徴情報であり、他方の部分はレンダリング処理における中間データである。
上記のプレレンダリング処理の最中、CPUは全体特徴情報と、全体特徴情報に対応する属性情報とを保存してよい。GPUはプレレンダリング後に取得されたレンダリングデータを保存してよい。
上記第1のプレレンダリングの場合には、データ処理デバイスの具体的な実行処理が以下に紹介される。
図7は、本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
段階S701:CPUは1つのデータフレームにおいて構築前の全体特徴情報を更新する。
図6に示されたプレレンダリング処理の後、予め設定された個数の特徴情報を結合することによって取得された全体特徴情報は、既にCPUに格納されている。現在の全体特徴情報におけるそれぞれの位置点の具体的なデータ値は、前のデータフレームにおけるデータ値であるので、このデータフレームにおいて、全体特徴情報におけるそれぞれの位置点のデータ値は、全体特徴情報がデータフレームに適用可能であるように更新される必要がある。
全体特徴情報の更新は2つの態様を含む。第1の態様は、全体特徴情報においてスリープ状態にある特徴識別子に対応する特徴情報が更新され、第2の態様は、全体特徴情報においてウェークアップ状態にある特徴識別子に対応する特徴情報が更新される。以下に、2つの態様がそれぞれ紹介される。
第1の態様:全体特徴情報においてスリープ状態にある特徴識別子に対応する特徴情報が更新される。この態様の主な目的は、このデータフレームにおいて取得された連想性データを全体特徴情報へと更新することである。
複数個の連想性データが1つのデータフレームにおいて取得され、連想性データに対応する特徴情報が識別され、それぞれの特徴情報の具体的なデータ値が、全体特徴情報における具体的なデータ値へと更新される。
例としてそれぞれの特徴情報におけるターゲット特徴情報を取り上げると、特徴情報を全体特徴情報に更新する処理は、以下に紹介される。
図8は、本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
段階S801:スリープ特徴識別子集合がヌル集合であるかどうかを判断する。YESであれば、処理は段階S802に進む。そうでなければ、処理は段階S803に進む。
ウェークアップ特徴識別子集合における全ての特徴識別子が用いられているので、新しい連想性データを受信したとき、ターゲット特徴情報の具体的な値が、スリープ特徴識別子に対応する特徴情報の具体的なデータ値へと更新される。
第1に、CPUは、スリープ特徴識別子集合がヌル集合かどうか判断し、スリープ特徴識別子集合がヌル集合である場合、予め設定された個数の特徴情報がウェークアップ状態にあって用いられている旨を示す。スリープ特徴識別子集合がヌル集合でない場合、予め設定された個数の特徴情報はスリープ状態にある特徴情報を有し、その特徴情報は用いられていない旨を示す。
段階S802:処理はある時間待機して、次に段階S801に進む。
CPUはスリープ特徴識別子集合がヌル集合であると判断し、CPUにおける予め設定された個数の特徴情報が、現在全てウェークアップ状態にあり、利用可能な特徴情報がない旨を示す。したがって、段階S801は、ある時間の待機の後に実行され得る。
段階S803:特徴識別子がスリープ特徴識別子集合から選択される。この特徴識別子に対応する特徴情報が識別され、この特徴情報の状態識別子がウェークアップ状態に変更される。
CPUは、スリープ特徴識別子集合がヌル集合であるかどうか判断し、そうでない場合、利用可能な特徴情報がある旨を示す。したがって、利用可能な特徴識別子がスリープ特徴識別子集合から選択され、次に、この特徴情報に対応する状態識別子がウェークアップ状態に変更され、この特徴識別子が次にウェークアップ特徴識別子集合に追加される。
段階S804:全体特徴情報をターゲット特徴情報で更新する。
全体特徴情報の属性情報において、各特徴識別子とそれに対応する位置点識別子集合の間には対応関係が存在するので、段階S803において選択された特徴識別子に対応する位置点識別子集合が、全体特徴情報から識別され得、それによって、位置点識別子集合に従って全体特徴情報から特徴情報を識別することを可能にする。ターゲット特徴情報の具体的なデータ値は、特徴識別子に対応する特徴情報の具体的なデータ値へと更新される。
例えば、特徴識別子1に対応する位置点識別子集合は位置点識別子1から位置点識別子8である。位置点識別子1から位置点識別子8に対応する8つの位置点は全体特徴情報から識別される。8つの位置点に対応する位置配列および色配列は、特徴識別子1に対応する特徴情報である。次に、ターゲット特徴情報の位置配列の具体的なデータ値が、位置点識別子1から位置点識別子8に対応する8つの位置点の対応するデータ値に更新される。
CPUは、データフレームに対応する全ての特徴情報が全体特徴情報に更新されるまで、または、スリープ特徴識別子集合がヌル集合になるまで、図8に示された処理を1つのデータフレームにおいて継続的に実行してよい。
第2の状況:既にウェークアップ状態にある特徴情報が、全体特徴情報を更新するように更新される。
各特徴情報は位置配列および色配列を有する。GPUの視覚化結果を最大限に活用すべく、特徴情報は、この実施形態において動的に表示され得るので、動的効果を用いることによって始点から終点までの方向を表示する。
1個の特徴情報がm個の位置点を有すると想定する。特徴情報の動的効果を表示すべく、特徴情報はm個全てのデータフレームにおいて一回更新される必要がある。そのようなものとして、表示線の動的効果が、色の影における変形によってシミュレートされ得る。例えば、落ちている流星の処理が、始点から終点への方向を示すように、始点と終点の間でシミュレートされる。
したがって、この実施形態における各データフレームにおいて、識別された特徴情報を上記第1の状況における全体特徴情報に更新することに加え、既にウェークアップ状態にある特徴情報もまた、この実施形態において更新され得る。
具体的には、ウェークアップ特徴識別子における各特徴情報に対応する位置配列を更新するように、位置マッピング関数
Figure 0007095852000069
が用いられる。ウェークアップ特徴識別子における各特徴情報に対応する色配列を更新するように、色マッピング関数
Figure 0007095852000070
が用いられる。
第3の状況:特徴情報が、表示を完了した表示線に関して利用不可能状態に設定される。
既にウェークアップ状態にある1個の特徴情報において、この特徴情報の識別子状態が、動的表示の完了後にスリープ状態へと変更される。1個の特徴情報が
Figure 0007095852000071
個の位置点を有すると想定する。
Figure 0007095852000072
個のデータフレームの後に、この特徴情報の表示が完了し、この特徴情報は再利用されてよい。すなわち、その特徴情報はスリープ状態にある。
1個の特徴情報がスリープ状態にある場合、この特徴情報の表示が既に完了している旨を示す。特徴情報は、GPUの視覚化結果において改めて表示される必要はない。したがって、スリープ状態にある特徴情報を、視覚化結果においてユーザに不可視にするべく、ちょうどスリープ状態にある特徴情報に不可視動作が実行されてよい。この特徴情報は、次に不可視状態となるであろう。
具体的には、GPUが透明な線分によってスリープ状態にある特徴情報を表示し得るように、この特徴情報の色配列における透明度が100%に設定される。代替的に、この特徴情報が視覚化結果における1つの位置点に対応するように、それぞれの位置点座標が1つの座標に設定される。この位置点は線分全体がユーザから不可視である。
再循環方式が本出願において確立されるので、全体特徴情報におけるそれぞれの特徴情報は、繰り返し用いられてよい。CPUは、全体特徴情報を再構築する必要はないであろう。GPUは、繰り返しレンダリングを実行する必要はないであろう。したがって、連想性データの表示効率が向上し得る。
図7に戻って、段階S702において、更新された全体特徴情報がGPUに送信される。
CPUは、上記3つの状況に従って1つのデータフレームにおいて一回全体特徴情報を更新した後、更新された特徴情報をGPUに改めて送信する。
段階S703:GPUは全体特徴情報を用いて、レンダリングデータにおける全体特徴情報を更新し、そのレンダリングデータに基づいて視覚化動作を実行する。
すなわち、中央演算処理装置から送信された全体特徴情報が受信される。構築前のレンダリングデータにおける全体特徴情報が全体特徴情報に基づいて更新される。更新されたレンダリングデータを用いることによって視覚化動作が実行される。全体特徴情報に対応する視覚化結果が取得される。
全体特徴情報に基づいてレンダリングを実行した後に取得されたレンダリングデータは、GPUに既に格納されている。視覚化結果を、この時点で全体特徴情報に適用可能とすることを可能にすべく、GPUは、CPUから送信された全体特徴情報における具体的な値を、既存の全体特徴情報における具体的な値へと更新してよい。そのようなものとして、GPUは更新された全体特徴情報に基づいて表示を実行してよい。
したがって、GPUは改めてレンダリング処理を実行する必要はなく、それによって、大きな量のGPUリソースが節約され得る。
図9は、本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
段階S901:CPUは、予め設定された個数の特徴情報を、複数個の連想性データ集合に分ける。
予め設定された個数の特徴情報を取得するCPUの処理に関して、段階S601が参照され得る。本明細書において詳細は繰り返さないが、それらの全体が参照によって組み込まれる。
第3の実装および第4の実装において、CPUは1つのデータフレームにおいてGPUと複数回通信するので、CPUは予め設定された個数の特徴情報を複数個の連想性データ集合に分ける。各連想性データ集合における具体的な個数の特徴情報が、当業者によって予め設定されてよい。
段階S902:各連想性データ集合に関して、CPUはこの連想性データ集合における全ての特徴情報を、1個の全体特徴情報として構築し、それによって、複数個の全体特徴情報を取得し、複数個の全体特徴情報を保存する。
特徴情報の各群に関して、CPUは、図4Aに対応する第1の実装に従って、または、図4Bに対応する第2の実装に従って、この群における全ての特徴情報に対応する全体特徴情報を識別し得る。
段階S903:CPUは、各全体特徴情報に属性情報を追加する。
(1)特徴識別子が各特徴情報に関して設定され、位置点識別子が全体特徴情報の全ての位置点に関して設定される。
(2)各特徴情報に対応する位置点識別子集合が判断される。各特徴情報と、それに対応する位置点識別子集合との間の対応関係が構築される。
(3)全体識別子が各全体特徴情報に追加され、全体識別子とそれに対応する特徴識別子集合との間の対応関係が構築される。
この実施形態において、複数個の特徴情報が存在するので、1個の特徴情報を別のものから区別すべく、識別子が各全体特徴情報に関して追加されてよい。各全体特徴情報は特徴情報の部分を含むので、どの特徴情報がそれぞれどの全体特徴情報に属するか明らかに判断すべく、各全体識別子に対応する特徴識別子集合が構築され、全体識別子と特徴識別子集合との間の対応関係が構築される。
例えば、10個の特徴情報(特徴情報1、特徴情報2、......特徴情報10)が存在し、全体特徴情報の個数が3であると想定する。例えば、特徴情報1から特徴情報3は全体特徴情報1に対応し、特徴情報4から特徴情報7は全体特徴情報2に対応し、特徴情報8から特徴情報10は全体特徴情報3に対応する。
次に、全体特徴情報に対応する識別子1に対応する特徴識別子集合が、特徴情報1の特徴識別子1、特徴情報2の特徴識別子2、および特徴情報3の特徴識別子3を含む。
(4)状態識別子が、各特徴情報に対応する特徴識別子に関して設定される。
全体特徴情報に属性情報を追加する概略図が表2および表3において参照され得る。
Figure 0007095852000073
Figure 0007095852000074
(5)ウェークアップ特徴識別子集合およびスリープ特徴識別子集合が構築される。
(1)、(2)、(4)、および(5)の処理手順は、第1のプレレンダリングにおける処理手順と一致し、したがって、本明細書においては繰り返さない。
段階S904:各全体特徴情報および各全体特徴の全体識別子が、一つずつGPUに送信される。
段階S905:GPUは、各全体特徴情報に基づいてプレレンダリングを実行する。レンダリングデータを取得する。それに応じて、レンダリングデータを、それに対応する全体識別子によって格納する。
上記のプレレンダリング処理の最中、CPUは全体特徴情報と、全体特徴情報に対応する属性情報とを保存してよい。GPUは、プレレンダリング後に取得されたレンダリングデータと、対応する全体識別子とを保存してよい。
上記第2のプレレンダリングの場合における、データ処理デバイスの具体的な実行処理が紹介される。
図10は、本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
段階S1001:CPUは1つのデータフレームにおいて、複数個の構築前の全体特徴情報を更新する。
図9に示されたプレレンダリング処理の後、予め設定された個数の特徴情報を結合することによって取得された全体特徴情報は既にCPUに格納されており、本明細書では、予め設定された全体特徴情報によって表される。
全体特徴情報の更新は、以下にそれぞれ紹介される3つの状況を含む。
第1の状況:複数個の連想性データが1つのデータフレームにおいて受信される。連想性データに対応する特徴情報が識別され、複数個の構築前の全体特徴情報が、それぞれの特徴情報に基づいて更新される。
例として、それぞれの特徴情報におけるターゲット特徴情報を取り上げると、ターゲット特徴情報を全体特徴情報に更新する処理が、以下に紹介される。
図11は、本開示のいくつかの実施形態による、データを処理する方法を示すフロー図である。
段階S1101:スリープ特徴識別子集合がヌル集合であるかどうかを判断する。YESの場合、処理は段階S1102に進む。そうでない場合、処理は段階S1103に進む。
段階S1102:処理はある時間待機して、次に段階S1101に進む。
段階S1103:特徴識別子がスリープ特徴識別子集合から選択される。この特徴情報の状態識別子がウェークアップ状態に変更される。
段階S1104:この特徴識別子に対応する全体識別子が識別され、その全体識別子に対応する全体特徴情報が識別される。その特徴識別子に対応する特徴情報が、その全体識別子に対応する全体特徴情報から識別される。
第2のプレレンダリング処理において、複数個の全体特徴情報が存在するので、この特徴識別子に対応する全体識別子が、第1に識別される。その全体識別子に対応する全体特徴情報が識別される。次に、その特徴識別子に対応する特徴識別子集合が、その全体特徴情報から識別され、その特徴識別子集合に対応する特徴情報が、その全体特徴情報から識別される。
段階S1105:ターゲット特徴情報によって全体特徴情報を更新する。
この特徴識別子に対応する特徴情報が全体特徴情報から識別される。ターゲット特徴情報の具体的なデータ値が、この特徴情報の具体的なデータ値へと更新される。
CPUは、データフレームに対応する全ての特徴情報が全体特徴情報へと更新されるまで、または、スリープ特徴識別子集合がヌル集合になるまで、図11に示された処理を1つのデータフレームにおいて継続的に実行してよい。
第2の状況:既にウェークアップ状態にある特徴情報が、全体特徴情報を更新するように更新される。
第3の状況:表示を完了した表示線に関して、特徴情報が利用不可能状態に設定される。
第2の状況および第3の状況の具体的な実行処理は、図7に示された処理において既に詳細に説明されている。本明細書では詳細は繰り返さない。
次に、図10を参照して段階S1002に進む:更新された全体特徴情報および全体識別子がGPUに送信される。
CPUは、上記3つの状況に従って1つのデータフレームにおいて一回全体特徴情報を更新した後、更新された全体特徴情報および全体特徴情報に対応する全体識別子を、改めてGPUに送信する。
段階S1003:GPUは更新された特徴情報に基づいて視覚化動作を実行する。すなわち、GPUは中央演算処理装置から送信された全体特徴情報および全体識別子を受信し、複数の構築前のレンダリングデータにおける全体識別子に対応するレンダリングデータを識別し、全体特徴情報に基づいて構築前のレンダリングデータにおける全体特徴情報を更新し、更新されたレンダリングデータを用いることによって視覚化動作を実行し、全体特徴情報に対応する視覚化結果を取得する。
実施形態の方法の機能は、ソフトウェア機能ユニットの形態で達成されて独立の製品として販売されるか用いられる場合には、コンピューティングデバイスがアクセスできるストレージ媒体に格納され得る。そのような理解に基づいて、現在のシステムまたは技術的解決法の一部に貢献する本出願の実施形態の一部が、本出願のそれぞれの実施形態の方法の全てまたはいくつかの段階をコンピューティングデバイス(パーソナルコンピュータ、サーバ、モバイルコンピューティングデバイス、またはネットワーク設備など)に実行可能にするいくつかの命令を含む、ストレージ媒体に格納されたコンピュータソフトウェア製品の形態で具現化され得る。前述のストレージ媒体は、USBフラッシュディスク、モバイルハードディスク、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、ディスクまたはコンパクトディスクを含む、プログラムコードを格納できる様々な媒体であり得る。
本開示における各実施形態は、各実施形態が他の実施形態と異なる部分に着目して段階的な形で説明され、様々な実施形態の中で同一および同様な部分に関して互いに参照され得る。
当業者は、上記説明によって本開示の実施形態を実装または使用し得る。これらの実施形態への様々な変形が当業者には明らかであろう。本開示に定められた一般原理は、本開示の精神または範囲から逸脱することなしに、他の実施形態において実践され得る。したがって、本開示はこれらの示された実施形態に限定されるものではなく、上に開示された原理および新規な特性と整合する最も幅広い範囲と一致するものとする。

Claims (21)

  1. 中央演算処理装置(CPU)においてデータフレームを受信する段階であって、前記データフレームは複数個の連想性データを含み、当該複数個の連想性データは順番に並べられており、かつ、起点、終点、および起点と終点との間の複数の点からなる点の集合を含む、段階と、
    前記CPUによって、前記複数個の連想性データに対応する特徴情報を識別する段階であって、前記特徴情報は、前記点の集合の中の少なくとも一点の特徴を表す段階と、
    前記CPUによって、前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成する段階と、
    前記全体特徴情報を視覚的にレンダリングするように、グラフィックス処理ユニット(GPU)に前記全体特徴情報を、前記CPUによって送信する段階と、
    前記CPUによって、第1の連想性データの起点座標および第2の連想性データの終点座標に基づいて、前記複数個の連想性データにおいて隣接する連想性データを識別する段階と、
    前記CPUによって、前記第1の連想性データを前記第2の連想性データに接続する複数の位置点を含む位置配列を、位置関数を用いて生成する段階と、
    前記CPUによって、前記位置配列における前記複数の位置点のそれぞれに対応する複数の明度を含む色配列を生成する段階と、
    前記CPUによって、前記位置配列および前記色配列に基づいて、接続情報を生成する段階と、
    前記CPUによって、前記第1の連想性データに関連づけられた特徴情報と前記第2の連想性データに関連づけられた特徴情報との間に前記接続情報を挿入する段階とを備える、方法。
  2. 特徴情報が位置配列および色配列を含み、前記特徴情報の少なくとも一部分を結合する段階が、
    前記CPUによって、それぞれの特徴情報の位置配列を結合して全体位置配列を取得する段階と、
    前記CPUによって、それぞれの特徴情報の色配列を結合して全体色配列を取得する段階と、
    前記CPUによって、前記全体位置配列および前記全体色配列を前記全体特徴情報として識別する段階とを含む、
    請求項1に記載の方法。
  3. 前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成する段階の前に、前記方法が、前記複数個の連想性データを複数の集合に分ける段階を備え、少なくとも1つの集合は前記複数個の連想性データにおける2つ以上の連想性データを含む、請求項1または2に記載の方法。
  4. 前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成する段階は、前記複数の集合のそれぞれに関して、対応する全体特徴情報を生成する段階を含み、前記全体特徴情報を前記GPUに送信する段階は、各集合に対応する前記対応する全体特徴情報を個々に送信する段階を含む、請求項に記載の方法。
  5. 前記GPUによって、前記全体特徴情報に基づいてレンダリング処理を実行してレンダリングデータを取得する段階と、
    前記GPUによって、前記レンダリングデータを用いて視覚化動作を実行する段階と、
    前記GPUによって、視覚化結果を取得する段階と
    をさらに備える、請求項1からのいずれか一項に記載の方法。
  6. 前記CPUによって、各特徴情報に関して特徴識別子を設定する段階と、
    前記CPUによって、位置点識別子集合を各特徴識別子に割り当てる段階であって、位置点識別子集合は対応する特徴情報に関連づけられた複数の位置点を含む、段階と、
    前記CPUによって、状態識別子を各特徴識別子に割り当てる段階であって、状態識別子は対応する特徴情報の使用状態を示す、段階と、
    前記CPUによって、前記特徴識別子のそれぞれに関連づけられた前記状態識別子に基づいて、ウェークアップ特徴識別子集合およびスリープ特徴識別子集合を構築する段階と
    をさらに備える、請求項1からのいずれか一項に記載の方法。
  7. 前記状態識別子は、前記特徴情報がウェークアップ状態にあるかスリープ状態にあるかを示す、請求項に記載の方法。
  8. 前記CPUによって、前記特徴識別子に関連づけられた前記状態識別子に基づいて、前記複数個の特徴情報の部分集合を更新する段階をさらに備える、請求項またはに記載の方法。
  9. 前記特徴識別子に関連づけられた状態識別子に基づいて、前記複数個の特徴情報の部分集合を更新する段階は、
    前記CPUが、前記スリープ特徴識別子集合がヌル集合である旨を判断したとき、予め定められた時間、待機する段階と、
    前記CPUによって、前記スリープ特徴識別子集合がヌルではない旨を判断したとき、前記スリープ特徴識別子集合から特徴識別子を選択する段階と、
    前記CPUによって、選択された前記特徴識別子に関連づけられた状態識別子をウェークアップ状態へと更新する段階と、
    前記CPUによって、選択された前記特徴識別子に関連づけられた新しい特徴情報で、前記全体特徴情報を更新する段階と、
    前記CPUによって、更新された前記特徴情報を前記GPUに送信する段階と
    を含む、請求項に記載の方法。
  10. グラフィックス処理ユニット(GPU)と、
    複数個の連想性データを含むデータフレームを受信し、当該複数個の連想性データは順番に並べられており、かつ、起点、終点、および起点と終点との間の複数の点からなる点のセットを含んでおり、
    前記複数個の連想性データに対応する特徴情報を識別し、前記特徴情報は、前記点のセットの中の少なくとも一点を表し、
    前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成し、
    前記全体特徴情報を視覚的にレンダリングするように、前記GPUに前記全体特徴情報を送信
    第1の連想性データの起点座標および第2の連想性データの終点座標に基づいて、前記複数個の連想性データにおける隣接する連想性データを識別し、
    前記第1の連想性データを前記第2の連想性データに接続する複数の位置点を含む位置配列を、位置関数を用いて生成し、
    前記位置配列における前記複数の位置点のそれぞれに対応する複数の明度を含む色配列を生成し、
    前記位置配列および前記色配列に基づいて接続情報を生成し、
    前記第1の連想性データに関連づけられた特徴情報と前記第2の連想性データに関連づけられた特徴情報との間に前記接続情報を挿入するように構成された、
    中央演算処理装置(CPU)と
    を備える、システム。
  11. 特徴情報が位置配列および色配列を含み、前記特徴情報の少なくとも一部分を結合することは、
    全体位置配列を取得するように、それぞれの特徴情報の位置配列を結合することと、
    全体色配列を取得するように、それぞれの特徴情報の色配列を結合することと、
    前記全体位置配列および前記全体色配列を前記全体特徴情報として識別することと、を含む、
    請求項10に記載のシステム。
  12. 前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成する段階の前に、前記CPUがさらに、前記複数個の連想性データを複数の集合に分けるように構成され、少なくとも1つの集合は、前記複数個の連想性データにおける2つ以上の個数の連想性データを含む、請求項10または11に記載のシステム。
  13. 前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成することは、前記複数の集合のそれぞれに対して、対応する全体特徴情報を生成することを含み、前記全体特徴情報を前記GPUに送信することは、各集合に対応する前記対応する全体特徴情報を個々に送信することを含む、請求項12に記載のシステム。
  14. 前記GPUはさらに、
    前記全体特徴情報に基づいてレンダリング処理を実行してレンダリングデータを取得し、
    前記レンダリングデータを用いて視覚化動作を実行し、
    視覚化結果を取得する
    ように構成された、請求項10から13のいずれか一項に記載のシステム。
  15. 前記CPUはさらに、
    各特徴情報に関して特徴識別子を設定し、
    対応する特徴情報に関連づけられた複数の位置点を含む位置点識別子集合を各特徴識別子に割り当て、
    状態識別子は対応する特徴情報の使用状態を示す状態識別子を各特徴識別子に割り当て、
    前記特徴識別子のそれぞれに関連づけられた前記状態識別子に基づいて、ウェークアップ特徴識別子集合およびスリープ特徴識別子集合を構築する
    ように構成された、請求項10から14のいずれか一項に記載のシステム。
  16. 前記状態識別子は、前記特徴情報がウェークアップ状態にあるかスリープ状態にあるかを示す、請求項15に記載のシステム。
  17. 前記CPUはさらに、前記特徴識別子に関連づけられた前記状態識別子に基づいて、前記複数個の特徴情報の部分集合を更新するように構成された、請求項15または16に記載のシステム。
  18. 中央演算処理装置(CPU)においてデータフレームを受信する段階であって、前記データフレームは順番に並べられた複数個の連想性データを含む、段階と、
    前記CPUによって、前記複数個の連想性データに対応する特徴情報を識別する段階と、
    前記CPUによって、第1の連想性データの起点座標および第2の連想性データの終点座標に基づいて、前記複数個の連想性データにおいて隣接する連想性データを識別する段階と、
    前記CPUによって、前記第1の連想性データを前記第2の連想性データに接続する複数の位置点を含む位置配列を、位置関数を用いて生成する段階と、
    前記CPUによって、前記位置配列における前記複数の位置点のそれぞれに対応する複数の明度を含む色配列を生成する段階と、
    前記CPUによって、前記位置配列および前記色配列に基づいて、接続情報を生成する段階と、
    前記CPUによって、前記第1の連想性データに関連づけられた特徴情報と前記第2の連想性データに関連づけられた特徴情報との間に前記接続情報を挿入し、前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成する段階と、
    前記全体特徴情報を視覚的にレンダリングするべく、グラフィックス処理ユニット(GPU)に前記全体特徴情報を、前記CPUによって送信する段階と
    を備える、方法。
  19. グラフィックス処理ユニット(GPU)と、
    順番に並べられた複数個の連想性データを含むデータフレームを受信し、
    前記複数個の連想性データに対応する特徴情報を識別し、
    第1の連想性データの起点座標および第2の連想性データの終点座標に基づいて、前記複数個の連想性データにおける隣接する連想性データを識別し、
    前記第1の連想性データを前記第2の連想性データに接続する複数の位置点を含む位置配列を、位置関数を用いて生成し、
    前記位置配列における前記複数の位置点のそれぞれに対応する複数の明度を含む色配列を生成し、
    前記位置配列および前記色配列に基づいて接続情報を生成し、
    前記第1の連想性データに関連づけられた特徴情報と前記第2の連想性データに関連づけられた特徴情報との間に前記接続情報を挿入し、
    前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成し、
    前記全体特徴情報を視覚的にレンダリングするべく、前記GPUに前記全体特徴情報を送信するように構成された、
    中央演算処理装置(CPU)と
    を備える、システム。
  20. 中央演算処理装置(CPU)においてデータフレームを受信する段階であって、前記データフレームは複数個の連想性データを含む、段階と、
    前記CPUによって、前記複数個の連想性データに対応する特徴情報を識別する段階と、
    前記CPUによって、各特徴情報に関して特徴識別子を設定する段階と、
    前記CPUによって、位置点識別子集合を各特徴識別子に割り当てる段階であって、位置点識別子集合は対応する特徴情報に関連づけられた複数の位置点を含む、段階と、
    前記CPUによって、状態識別子を各特徴識別子に割り当てる段階であって、状態識別子は対応する特徴情報の使用状態を示す、段階と、
    前記CPUによって、前記特徴識別子のそれぞれに関連づけられた前記状態識別子に基づいて、ウェークアップ特徴識別子集合およびスリープ特徴識別子集合を構築する段階と、
    前記CPUによって、前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成する段階と、
    前記全体特徴情報を視覚的にレンダリングするべく、グラフィックス処理ユニット(GPU)に前記全体特徴情報を、前記CPUによって送信する段階と
    を備える、方法。
  21. グラフィックス処理ユニット(GPU)と、
    複数個の連想性データを含むデータフレームを受信し、
    前記複数個の連想性データに対応する特徴情報を識別し、
    各特徴情報に関して特徴識別子を設定し、
    対応する特徴情報に関連づけられた複数の位置点を含む位置点識別子集合を各特徴識別子に割り当て、
    状態識別子は対応する特徴情報の使用状態を示す状態識別子を各特徴識別子に割り当て、
    前記特徴識別子のそれぞれに関連づけられた前記状態識別子に基づいて、ウェークアップ特徴識別子集合およびスリープ特徴識別子集合を構築し、
    前記特徴情報の少なくとも一部分を結合することによって全体特徴情報を生成し、
    前記全体特徴情報を視覚的にレンダリングするべく、前記GPUに前記全体特徴情報を送信するように構成された、
    中央演算処理装置(CPU)と
    を備える、システム。
JP2019503288A 2016-09-12 2017-08-31 データ集約型視覚化動作におけるgpu性能を向上する方法およびシステム Active JP7095852B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201610818816.4 2016-09-12
CN201610818816.4A CN107818069B (zh) 2016-09-12 2016-09-12 数据处理方法及系统
US15/690,593 US10482564B2 (en) 2016-09-12 2017-08-30 Method and system for improving GPU performance during data-intensive visualization operations
US15/690,593 2017-08-30
PCT/US2017/049581 WO2018048711A1 (en) 2016-09-12 2017-08-31 Method and system for improving gpu performance during data-intensive visualization operations

Publications (2)

Publication Number Publication Date
JP2019533211A JP2019533211A (ja) 2019-11-14
JP7095852B2 true JP7095852B2 (ja) 2022-07-05

Family

ID=61558792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019503288A Active JP7095852B2 (ja) 2016-09-12 2017-08-31 データ集約型視覚化動作におけるgpu性能を向上する方法およびシステム

Country Status (5)

Country Link
US (1) US10482564B2 (ja)
JP (1) JP7095852B2 (ja)
CN (1) CN107818069B (ja)
TW (1) TWI739828B (ja)
WO (1) WO2018048711A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019212537A1 (en) 2018-05-01 2019-11-07 Google Llc Accelerated large-scale similarity calculation
CN109167979B (zh) * 2018-10-30 2020-09-11 深兰科技(上海)有限公司 多路监控视频人工智能分析的处理方法及系统
CN111930464B (zh) * 2020-10-14 2021-02-12 蘑菇车联信息科技有限公司 地图引擎的资源配置方法、装置及电子设备
CN114511657A (zh) * 2020-10-28 2022-05-17 华为技术有限公司 一种数据处理方法及相关装置
CN114760526A (zh) * 2022-03-31 2022-07-15 北京百度网讯科技有限公司 一种视频渲染方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012511783A (ja) 2008-12-09 2012-05-24 クゥアルコム・インコーポレイテッド 3次元グラフィックスハードウェアを使用した2次元グラフィックスレンダリング中の頂点ポイントの廃棄
JP2014182670A (ja) 2013-03-21 2014-09-29 Geo Technical Laboratory Co Ltd 描画データ生成装置および描画装置

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU6503800A (en) 1999-07-30 2001-02-19 Pixlogic Llc Perceptual similarity image retrieval
EP1232480B1 (en) 1999-11-23 2006-05-17 Canon Kabushiki Kaisha Image processing apparatus
JP4010091B2 (ja) * 2000-03-23 2007-11-21 セイコーエプソン株式会社 メモリデバイスおよびその製造方法
US7623648B1 (en) 2004-12-01 2009-11-24 Tellme Networks, Inc. Method and system of generating reference variations for directory assistance data
US9342459B2 (en) * 2002-08-06 2016-05-17 Qualcomm Incorporated Cache management in a mobile device
US7986358B1 (en) 2003-02-25 2011-07-26 Matrox Electronic Systems, Ltd. Bayer image conversion using a graphics processing unit
CN100354894C (zh) * 2005-11-10 2007-12-12 北京航空航天大学 基于图形处理单元gpu的粒子系统实现方法
US7728841B1 (en) 2005-12-19 2010-06-01 Nvidia Corporation Coherent shader output for multiple targets
US8212826B1 (en) 2006-02-03 2012-07-03 Nvidia Corporation Using graphics processing unit (“GPU”)-generated data in-situ to characterize the ability of a cable to carry digitized video
US8044955B1 (en) 2007-08-31 2011-10-25 Adobe Systems Incorporated Dynamic tessellation spreading for resolution-independent GPU anti-aliasing and rendering
US8026912B1 (en) 2007-12-04 2011-09-27 Nvidia Corporation System and method for structuring an A-buffer
US9064333B2 (en) 2007-12-17 2015-06-23 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
JP5525175B2 (ja) * 2008-04-08 2014-06-18 アビッド テクノロジー インコーポレイテッド 複数のハードウェア・ドメイン、データ・タイプ、およびフォーマットの処理を統合し抽象化するフレームワーク
US8810590B2 (en) 2008-07-11 2014-08-19 Advanced Micro Devices, Inc. Method and apparatus for spatial binning on a GPU and global path planning to avoid spatially binned objects
US20100013854A1 (en) 2008-07-18 2010-01-21 Microsoft Corporation Gpu bezier path rasterization
US8754904B2 (en) 2011-04-03 2014-06-17 Lucidlogix Software Solutions, Ltd. Virtualization method of vertical-synchronization in graphics systems
US8169434B2 (en) 2008-09-29 2012-05-01 Microsoft Corporation Octree construction on graphics processing units
US8290882B2 (en) 2008-10-09 2012-10-16 Microsoft Corporation Evaluating decision trees on a GPU
JP5526919B2 (ja) * 2010-03-26 2014-06-18 株式会社デンソー 地図表示装置
US20110285736A1 (en) 2010-05-21 2011-11-24 Kilgard Mark J Decomposing cubic bèzier segments for tessellation-free stencil filling
US20120001905A1 (en) 2010-06-30 2012-01-05 Ati Technologies, Ulc Seamless Integration of Multi-GPU Rendering
US8319772B2 (en) * 2010-07-23 2012-11-27 Microsoft Corporation 3D layering of map metadata
US8670613B2 (en) * 2010-08-31 2014-03-11 Nvidia Corporation Lossless frame buffer color compression
US9001135B2 (en) * 2010-09-18 2015-04-07 Google Inc. Method and mechanism for delivering applications over a wan
US8516578B1 (en) 2010-12-22 2013-08-20 Google Inc. Vertex array access bounds checking
US9286589B2 (en) 2011-10-14 2016-03-15 Caelo Media, Llc Method and system for customizing a project
CN102890829B (zh) * 2011-10-24 2015-05-27 克拉玛依红有软件有限责任公司 一种基于gpu的渲染地形的方法
KR101338370B1 (ko) 2012-04-27 2013-12-10 주식회사 컴퍼니원헌드레드 지피유를 이용한 2차원 벡터 그래픽스 패스의 배치 렌더링 방법
US9275498B2 (en) 2012-08-09 2016-03-01 Qualcomm Incorporated GPU-accelerated path rendering
US9304730B2 (en) 2012-08-23 2016-04-05 Microsoft Technology Licensing, Llc Direct communication between GPU and FPGA components
EP2997546B1 (en) * 2013-05-15 2020-09-02 Google LLC Efficient composition and rendering of graphical elements
US20150019625A1 (en) * 2013-07-09 2015-01-15 Google Inc. Providing indoor map data to a client computing device
US20150178404A1 (en) * 2013-12-20 2015-06-25 Urban Engines, Inc. Fast rendering of visualization
US10140678B2 (en) 2015-12-18 2018-11-27 Intel Corporation Specialized code paths in GPU processing
CN105894439B (zh) * 2016-04-05 2019-01-22 中国海洋大学 基于CUDA的海洋涡旋及Argo浮标交集数据快速提取算法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012511783A (ja) 2008-12-09 2012-05-24 クゥアルコム・インコーポレイテッド 3次元グラフィックスハードウェアを使用した2次元グラフィックスレンダリング中の頂点ポイントの廃棄
JP2014182670A (ja) 2013-03-21 2014-09-29 Geo Technical Laboratory Co Ltd 描画データ生成装置および描画装置

Also Published As

Publication number Publication date
US10482564B2 (en) 2019-11-19
JP2019533211A (ja) 2019-11-14
CN107818069A (zh) 2018-03-20
CN107818069B (zh) 2021-10-01
US20180075571A1 (en) 2018-03-15
WO2018048711A1 (en) 2018-03-15
TWI739828B (zh) 2021-09-21
TW201812693A (zh) 2018-04-01

Similar Documents

Publication Publication Date Title
JP7095852B2 (ja) データ集約型視覚化動作におけるgpu性能を向上する方法およびシステム
US9480914B2 (en) Online gaming
CN106780686B (zh) 一种3d模型的合并渲染系统及方法、终端
CN107358649B (zh) 地形文件的处理方法和装置
CN107392835B (zh) 一种粒子系统的处理方法及装置
CN103606184B (zh) 一种基于二维和三维一体化矢量渲染引擎的装置
US11260300B2 (en) Image processing method and apparatus
US8823705B2 (en) Image generating apparatus and image generating method for generating images by rendering a polygon
JPWO2007132746A1 (ja) 処理装置
CN105556565A (zh) 片段着色器执行顶点着色器计算
CN101989178A (zh) 多叉树数据结构的立体环状可视化方法
KR20160051155A (ko) 렌더링 장치 및 방법
US20160263479A1 (en) Storage medium having stored therein game program, game apparatus, game system, and game processing method
US9208752B2 (en) Method for synchronous representation of a virtual reality in a distributed simulation system
US20170287201A1 (en) Texture generation system
CN110580691A (zh) 图像的动态处理方法、装置、设备及计算机可读存储介质
US10719985B2 (en) Model object building method, server, and system
CN110223216A (zh) 一种基于并行plb的数据处理方法、装置及计算机存储介质
US20230048839A1 (en) Compressing texture data on a per-channel basis
CN108733356A (zh) 一种纹理共享方法、计算机设备和存储介质
JP2013536490A (ja) テキストレンダリングのためのルックアップテーブル
US9443344B2 (en) Method for rendering data of a three-dimensional surface
JP2014505954A (ja) 仮想環境における隠蔽の推定方法
US11983900B2 (en) Image processing method and apparatus, storage medium, and electronic device
CN118043842A (zh) 一种渲染格式选择方法及其相关设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200520

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210311

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210713

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220324

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20220324

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20220405

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20220412

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220615

R150 Certificate of patent or registration of utility model

Ref document number: 7095852

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150