JP5968463B2 - データを別の記憶装置にコピーせずにデータソースによりバッファに格納されたデータを処理するためのポインタのスワッピング - Google Patents
データを別の記憶装置にコピーせずにデータソースによりバッファに格納されたデータを処理するためのポインタのスワッピング Download PDFInfo
- Publication number
- JP5968463B2 JP5968463B2 JP2014551278A JP2014551278A JP5968463B2 JP 5968463 B2 JP5968463 B2 JP 5968463B2 JP 2014551278 A JP2014551278 A JP 2014551278A JP 2014551278 A JP2014551278 A JP 2014551278A JP 5968463 B2 JP5968463 B2 JP 5968463B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- pointer
- buffers
- buffer
- processing
- 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 - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Controls And Circuits For Display Device (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
Claims (24)
- 複数のバッファと、
ロードポインタにより示された各バッファにデータをロードするデータソースと、
処理ポインタにより示された各バッファのデータを処理するプロセッサと、
プロセッサにより実行された場合、コンピュータに対してデータをロードするために前記複数のバッファを示すように前記ロードポインタをスワッピングさせ、前記データを処理するために前記複数のバッファを示すように前記処理ポインタをスワッピングさせ、前記ロードポインタと前記処理ポインタとをスワッピングするときに、スワップポインタへのアクセスを制御するためにセマフォロックを取得させる一式の命令を含むコンピュータ読み取り可能媒体と
を有するシステム。 - 前記データソースは、カメラである、請求項1に記載のシステム。
- 前記データソースは、ストリーミングビデオソースである、請求項1に記載のシステム。
- 前記データソースは、ビデオ処理スレッドの出力である、請求項1に記載のシステム。
- 前記プロセッサは、グラフィックプロセッサである、請求項1に記載のシステム。
- プロセッサは、複数の処理スレッドに対応する複数のポインタにより示された各バッファのデータを処理する、請求項1に記載のシステム。
- 複数のバッファを示すために第1のポインタを連続的にスワッピングすることにより、第1のポインタにより示された複数のバッファにデータを連続的にロードするステップと、
前記複数のバッファを示すために第2のポインタを連続的にスワッピングすることにより、前記複数のバッファに第2のポインタを連続的に示すことで前記複数のバッファにロードされた前記データを連続的に処理するステップと、
前記第1のポインタと前記第2のポインタとをスワッピングするときに、スワップポインタへのアクセスを制御するためにセマフォロックを取得するステップと
を有する方法。 - 前記複数のバッファのうち1つがロードされたことを示すためにデータレディ信号を提供するステップを更に有する、請求項7に記載の方法。
- 前記複数のバッファに連続的にロードされる前記データは、フレームデータである、請求項7に記載の方法。
- 前記複数のバッファに連続的にロードされる前記データは、画像データである、請求項7に記載の方法。
- 前記複数のバッファにロードされた前記データを連続的に処理するステップは、前記複数のバッファにロードされた前記データのビデオ処理アルゴリズムを実行することを有する、請求項7に記載の方法。
- 複数の処理スレッドは、前記複数のバッファを示すために前記複数のポインタを連続的にスワッピングすることにより、前記複数の処理スレッドに対応する複数のポインタをそれぞれ前記複数のバッファに連続的に示すことで前記複数のバッファにロードされた前記データを連続的に処理する、請求項7に記載の方法。
- プロセッサにより実行された場合、コンピュータに対して、
複数のバッファを示すために第1のポインタを連続的にスワッピングすることにより、第1のポインタにより示された複数のバッファにデータを連続的にロードさせ、
前記複数のバッファを示すために第2のポインタを連続的にスワッピングすることにより、前記複数のバッファに第2のポインタを連続的に示すことで前記複数のバッファにロードされた前記データを連続的に処理させ、
前記第1のポインタと前記第2のポインタとをスワッピングするときに、スワップポインタへのアクセスを制御するためにセマフォロックを取得させる一式の命令を有するコンピュータプログラム。 - プロセッサにより実行された場合、コンピュータに対して、
前記複数のバッファのうち1つがロードされたことを示すためにデータレディ信号を提供させる一式の命令を更に有する、請求項13に記載のコンピュータプログラム。 - 前記複数のバッファに連続的にロードされる前記データは、フレームデータである、請求項13に記載のコンピュータプログラム。
- 前記複数のバッファに連続的にロードされる前記データは、画像データである、請求項13に記載のコンピュータプログラム。
- 前記複数のバッファにロードされた前記データを連続的に処理することは、前記複数のバッファにロードされた前記データのビデオ処理アルゴリズムを実行することを含む、請求項13に記載のコンピュータプログラム。
- 複数の処理スレッドは、前記複数のバッファを示すために前記複数のポインタを連続的にスワッピングすることにより、前記複数の処理スレッドに対応する複数のポインタをそれぞれ前記複数のバッファに連続的に示すことで前記複数のバッファにロードされた前記データを連続的に処理する、請求項13に記載のコンピュータプログラム。
- 請求項13ないし18のうちいずれか1項に記載のコンピュータプログラムを記録したコンピュータ読み取り可能媒体。
- 最初に第1のバッファにロードポインタを示すステップと、
最初に第2のバッファにスワップポインタを示すステップと、
最初に第3のバッファに処理ポインタを示すステップと、
前記ロードポインタにより示されたバッファのデータをロードするステップと、
前記ロードポインタを前記スワップポインタとスワッピングし、その後、前記処理ポインタを前記スワップポインタとスワッピングするステップと、
前記ロードポインタにより示された前記バッファの前記データをロードし、前記処理ポインタにより示された前記バッファの前記データを処理するステップと、
前記ロードポインタと処理ポインタとをスワッピングするときに、スワップポインタへのアクセスを制御するためにセマフォロックを取得するステップと
を有する方法。 - バッファがロードされたことを示すためにデータレディ信号を提供するステップを更に有する、請求項20に記載の方法。
- 前記バッファにロードされる前記データは、フレームデータである、請求項20に記載の方法。
- 前記バッファにロードされる前記データは、画像データである、請求項20に記載の方法。
- 前記バッファにロードされた前記データを処理するステップは、前記バッファにロードされた前記データのビデオ処理アルゴリズムを実行することを有する、請求項20に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
MYPI2012000072 | 2012-01-06 | ||
MYPI2012000072 | 2012-01-06 | ||
PCT/US2012/071750 WO2013103573A1 (en) | 2012-01-06 | 2012-12-27 | Swapping pointers to process data stored in buffers by a data source without copying the data to separate storage |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015505409A JP2015505409A (ja) | 2015-02-19 |
JP5968463B2 true JP5968463B2 (ja) | 2016-08-10 |
Family
ID=48745378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014551278A Expired - Fee Related JP5968463B2 (ja) | 2012-01-06 | 2012-12-27 | データを別の記憶装置にコピーせずにデータソースによりバッファに格納されたデータを処理するためのポインタのスワッピング |
Country Status (5)
Country | Link |
---|---|
US (1) | US20150006839A1 (ja) |
EP (1) | EP2801023A4 (ja) |
JP (1) | JP5968463B2 (ja) |
CN (1) | CN104025037B (ja) |
WO (1) | WO2013103573A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170154403A1 (en) * | 2015-11-30 | 2017-06-01 | Intel Corporation | Triple buffered constant buffers for efficient processing of graphics data at computing devices |
FR3131033B1 (fr) * | 2021-12-20 | 2024-10-04 | Vitesco Technologies | Procédé et calculateur de gestion d’échanges de données entre une pluralité de tâches |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5179665A (en) * | 1987-06-24 | 1993-01-12 | Westinghouse Electric Corp. | Microprocessor information exchange with updating of messages by asynchronous processors using assigned and/or available buffers in dual port memory |
US5696939A (en) * | 1995-09-29 | 1997-12-09 | Hewlett-Packard Co. | Apparatus and method using a semaphore buffer for semaphore instructions |
US6243770B1 (en) * | 1998-07-21 | 2001-06-05 | Micron Technology, Inc. | Method for determining status of multiple interlocking FIFO buffer structures based on the position of at least one pointer of each of the multiple FIFO buffers |
JP3656438B2 (ja) * | 1998-11-02 | 2005-06-08 | 松下電器産業株式会社 | 高速画像入力変換装置 |
JP2001282650A (ja) * | 2000-03-29 | 2001-10-12 | Mitsubishi Electric Corp | データバッファリング装置およびこのデータバッファリング装置を用いた分散制御システム |
US6725457B1 (en) * | 2000-05-17 | 2004-04-20 | Nvidia Corporation | Semaphore enhancement to improve system performance |
US20030056194A1 (en) * | 2001-07-16 | 2003-03-20 | Lino Iglesias | Enhanced software components |
US6809735B1 (en) * | 2002-01-08 | 2004-10-26 | Apple Computer, Inc. | Virtualization of graphics resources |
JP2004272373A (ja) * | 2003-03-05 | 2004-09-30 | Mitsubishi Electric Corp | バッファリング装置 |
US7134000B2 (en) * | 2003-05-21 | 2006-11-07 | Analog Devices, Inc. | Methods and apparatus for instruction alignment including current instruction pointer logic responsive to instruction length information |
JP4749002B2 (ja) * | 2005-02-25 | 2011-08-17 | ルネサスエレクトロニクス株式会社 | データ転送装置、画像処理装置及びデータ転送制御方法 |
US7487271B2 (en) * | 2005-09-22 | 2009-02-03 | Motorola, Inc. | Method and apparatus using buffer pools and arrays of buffer pointers for sharing memory in a multiprocessor system |
US7958280B2 (en) * | 2006-10-27 | 2011-06-07 | Stec, Inc. | Parallel data transfer in solid-state storage |
US7720802B2 (en) * | 2007-01-03 | 2010-05-18 | International Business Machines Corporation | Reclaiming resident buffers when a reclaim threshold has been exceeded by swapping the oldest in use buffer and a new buffer, and referencing the new buffer via an updated set of read and write pointers |
US8522242B2 (en) * | 2007-12-31 | 2013-08-27 | Intel Corporation | Conditional batch buffer execution |
US8321869B1 (en) * | 2008-08-01 | 2012-11-27 | Marvell International Ltd. | Synchronization using agent-based semaphores |
US8291136B2 (en) * | 2009-12-02 | 2012-10-16 | International Business Machines Corporation | Ring buffer |
US8327047B2 (en) * | 2010-03-18 | 2012-12-04 | Marvell World Trade Ltd. | Buffer manager and methods for managing memory |
US20130069981A1 (en) * | 2011-09-15 | 2013-03-21 | Research In Motion Limited | System and Methods for Managing Composition of Surfaces |
-
2012
- 2012-12-27 CN CN201280066034.XA patent/CN104025037B/zh not_active Expired - Fee Related
- 2012-12-27 WO PCT/US2012/071750 patent/WO2013103573A1/en active Application Filing
- 2012-12-27 JP JP2014551278A patent/JP5968463B2/ja not_active Expired - Fee Related
- 2012-12-27 EP EP12864151.1A patent/EP2801023A4/en not_active Withdrawn
- 2012-12-27 US US14/125,150 patent/US20150006839A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
CN104025037A (zh) | 2014-09-03 |
CN104025037B (zh) | 2018-07-03 |
EP2801023A1 (en) | 2014-11-12 |
EP2801023A4 (en) | 2017-06-21 |
US20150006839A1 (en) | 2015-01-01 |
JP2015505409A (ja) | 2015-02-19 |
WO2013103573A1 (en) | 2013-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6374038B2 (ja) | ドローコールにわたる共有リソースデータコヒーレンシを確実にするための効率的なハードウェアメカニズム | |
TWI639973B (zh) | 動態再平衡圖型處理器資源的方法、裝置與系統 | |
TWI535277B (zh) | 用於深度緩衝之方法、設備及系統 | |
US9407961B2 (en) | Media stream selective decode based on window visibility state | |
TWI615807B (zh) | 用於記錄在輸入幾何物件粒度上的可視度測試之結果的方法、設備及系統 | |
JP6182225B2 (ja) | カラーバッファ圧縮 | |
US20150248292A1 (en) | Handling compressed data over distributed cache fabric | |
US20140333662A1 (en) | Multi-sampling anti-aliasing compression by use of unreachable bit combinations | |
JP6745020B2 (ja) | 方法、コンピュータプログラム、コンピュータ可読記録媒体および装置 | |
US9538208B2 (en) | Hardware accelerated distributed transcoding of video clips | |
US9864635B2 (en) | Reducing the number of read/write operations performed by a CPU to duplicate source data to enable parallel processing on the source data | |
JP6419856B2 (ja) | 非特権アプリケーションによるグラフィクスワークロード・サブミッション | |
US9773477B2 (en) | Reducing the number of scaling engines used in a display controller to display a plurality of images on a screen | |
JP5968463B2 (ja) | データを別の記憶装置にコピーせずにデータソースによりバッファに格納されたデータを処理するためのポインタのスワッピング | |
TW201602961A (zh) | 用以延遲著色之串流壓縮去鋸齒方法 | |
JP2015508528A (ja) | パイプライン化された画像処理シーケンサ | |
US8903193B2 (en) | Reducing memory bandwidth consumption when executing a program that uses integral images | |
TWI610178B (zh) | 共享函數多埠rom系統及裝置 | |
US20130326351A1 (en) | Video Post-Processing on Platforms without an Interface to Handle the Video Post-Processing Request from a Video Player | |
EP2856754A1 (en) | Video post- processing on platforms without an interface to handle the video post-processing request from a video player |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150824 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150929 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151225 |
|
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: 20160607 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160705 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5968463 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |