JP6857196B2 - 1つまたは複数の通信チャネルにより相互接続された複数の異なるメモリ・ロケーションを有するコンピューティング・システムのアプリケーションを最適化する方法、コンピュータ可読プログラムを含む非一時的コンピュータ可読記憶媒体、およびシステム - Google Patents
1つまたは複数の通信チャネルにより相互接続された複数の異なるメモリ・ロケーションを有するコンピューティング・システムのアプリケーションを最適化する方法、コンピュータ可読プログラムを含む非一時的コンピュータ可読記憶媒体、およびシステム Download PDFInfo
- Publication number
- JP6857196B2 JP6857196B2 JP2018561000A JP2018561000A JP6857196B2 JP 6857196 B2 JP6857196 B2 JP 6857196B2 JP 2018561000 A JP2018561000 A JP 2018561000A JP 2018561000 A JP2018561000 A JP 2018561000A JP 6857196 B2 JP6857196 B2 JP 6857196B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- data processing
- data area
- computer
- memory locations
- 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
Links
Images
Classifications
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Communication Control (AREA)
- Devices For Executing Special Programs (AREA)
Description
Claims (15)
- プロセッサおよびメモリを有するコンピュータの情報処理により、1つまたは複数の通信チャネルにより相互接続された複数の異なるメモリ・ロケーションを有するコンピューティング・システムのアプリケーションを最適化する方法であって、
アプリケーションのデータ領域の1つまたは複数のデータ処理特性を決定するステップであって、前記データ領域の前記1つまたは複数のデータ処理特性が、データ・レイアウト情報を含む、前記ステップと、
前記1つまたは複数のデータ処理特性に基づいて、前記データ領域の1つまたは複数のデータ処理ポリシーを決定するステップと、
前記1つまたは複数のデータ処理特性に基づいて、異なるメモリ・ロケーションにおいて前記データ領域を使用する前記アプリケーションの範囲のデータ・セットアップ・コストを決定するステップと、
前記1つまたは複数のデータ処理ポリシーおよび前記異なるメモリ・ロケーションの前記データ・セットアップ・コストに従って、前記アプリケーションを最適化するステップと、
を含む、方法。 - 前記アプリケーションを最適化するステップが、前記データ領域を格納する1つまたは複数のメモリ・ロケーションを選択するステップを含む、請求項1に記載の方法。
- 前記データ領域がメモリ・ロケーション間で移動する1つまたは複数の通信チャネルを選択するステップをさらに含む、請求項1または2に記載の方法。
- 前記データ領域の前記1つまたは複数のデータ処理特性が、網羅情報を含む、請求項1ないし3のいずれかに記載の方法。
- 前記データ領域の前記1つまたは複数のデータ処理特性が、アクセス頻度情報を含む、請求項1ないし3のいずれかに記載の方法。
- 前記1つまたは複数のデータ処理特性のうちの少なくとも1つが、プログラマによって設定された、請求項1に記載の方法。
- 前記アプリケーションの各範囲が、アプリケーション・コードの統語構造または一連の実行対象命令により画定された前記アプリケーション・コードの一部によって規定された、請求項4ないし5のいずれかに記載の方法。
- 1つまたは複数の通信チャネルにより相互接続された複数の異なるメモリ・ロケーションを有するコンピューティング・システムのアプリケーションを最適化するコンピュータ可読プログラムを含む非一時的コンピュータ可読記憶媒体であって、前記コンピュータ可読プログラムが、コンピュータ上で実行された場合に、請求項1の各ステップを前記コンピュータに実行させる、非一時的コンピュータ可読記憶媒体。
- 1つまたは複数の通信チャネルにより相互接続された複数の異なるメモリ・ロケーションを有するコンピューティング・システムのアプリケーションを最適化するシステムであって、
アプリケーションのデータ領域の1つまたは複数のデータ処理特性を決定し、前記1つまたは複数のデータ処理特性に基づいて、前記データ領域の1つまたは複数のデータ処理ポリシーを決定し、前記1つまたは複数のデータ処理特性に基づいて、異なるメモリ・ロケーションにおいて前記データ領域を使用する前記アプリケーションの範囲のデータ・セットアップ・コストを決定し、前記1つまたは複数のデータ処理ポリシーおよび前記異なるメモリ・ロケーションの前記データ・セットアップ・コストに従って、前記アプリケーションを最適化するように構成されたプロセッサを備えたコンパイラ・モジュールを備え、
ここで前記データ領域の前記1つまたは複数のデータ処理特性が、データ・レイアウト情報を含む、
最適化するシステム。 - 前記コンパイラ・モジュールが、前記データ領域を格納する1つまたは複数のメモリ・ロケーションを選択するようにさらに構成された、請求項9に記載の最適化するシステム。
- 前記コンパイラ・モジュールが、前記データ領域がメモリ・ロケーション間で移動する1つまたは複数の通信チャネルを選択するようにさらに構成された、請求項9または10に記載の最適化するシステム。
- 前記データ領域の前記1つまたは複数のデータ処理特性が、網羅情報を含む、請求項9ないし11のいずれかに記載の最適化するシステム。
- 前記データ領域の前記1つまたは複数のデータ処理特性が、アクセス頻度情報を含む、請求項9ないし11のいずれかに記載の最適化するシステム。
- 前記1つまたは複数のデータ処理特性のうちの少なくとも1つが、プログラマによって設定された、請求項9に記載の最適化するシステム。
- 前記アプリケーションの各範囲が、アプリケーション・コードの統語構造または一連の実行対象命令により画定された前記アプリケーション・コードの一部によって規定された、請求項12ないし13のいずれかに記載の最適化するシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/180,756 US10996989B2 (en) | 2016-06-13 | 2016-06-13 | Flexible optimized data handling in systems with multiple memories |
US15/180,756 | 2016-06-13 | ||
PCT/IB2017/050953 WO2017216646A1 (en) | 2016-06-13 | 2017-02-20 | Flexible optimized data handling in systems with multiple memories |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019526091A JP2019526091A (ja) | 2019-09-12 |
JP6857196B2 true JP6857196B2 (ja) | 2021-04-14 |
Family
ID=60572751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018561000A Active JP6857196B2 (ja) | 2016-06-13 | 2017-02-20 | 1つまたは複数の通信チャネルにより相互接続された複数の異なるメモリ・ロケーションを有するコンピューティング・システムのアプリケーションを最適化する方法、コンピュータ可読プログラムを含む非一時的コンピュータ可読記憶媒体、およびシステム |
Country Status (6)
Country | Link |
---|---|
US (3) | US10996989B2 (ja) |
JP (1) | JP6857196B2 (ja) |
CN (1) | CN109196484B (ja) |
DE (1) | DE112017001421T5 (ja) |
GB (1) | GB2568399A (ja) |
WO (1) | WO2017216646A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10996989B2 (en) * | 2016-06-13 | 2021-05-04 | International Business Machines Corporation | Flexible optimized data handling in systems with multiple memories |
US11287982B2 (en) * | 2019-07-12 | 2022-03-29 | International Business Machines Corporation | Associating data management policies to portions of data using connection information |
JP7196052B2 (ja) * | 2019-11-27 | 2022-12-26 | Kddi株式会社 | 情報処理装置及び情報処理方法 |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5954085A (en) | 1994-07-12 | 1999-09-21 | Petro-First, Inc. | Prefabricated modular fuel dispensing system |
US5953531A (en) * | 1997-07-25 | 1999-09-14 | International Business Machines Corporation | Method of, system for, and computer program product for minimizing loop execution time by optimizing block/tile sizes |
US6378066B1 (en) | 1999-02-04 | 2002-04-23 | Sun Microsystems, Inc. | Method, apparatus, and article of manufacture for developing and executing data flow programs, and optimizing user input specifications |
US6889293B1 (en) * | 2000-06-09 | 2005-05-03 | Agere Systems Inc. | Directory-based prediction methods and apparatus for shared-memory multiprocessor systems |
JP2002196960A (ja) * | 2000-12-25 | 2002-07-12 | Hitachi Ltd | ファイル入出力制御方法、ファイル管理サーバ及び並列計算機システム |
GB2381886B (en) * | 2001-11-07 | 2004-06-23 | Sun Microsystems Inc | Computer system with virtual memory and paging mechanism |
US6952821B2 (en) * | 2002-08-19 | 2005-10-04 | Hewlett-Packard Development Company, L.P. | Method and system for memory management optimization |
US7200840B2 (en) * | 2002-10-24 | 2007-04-03 | International Business Machines Corporation | Method and apparatus for enabling access to global data by a plurality of codes in an integrated executable for a heterogeneous architecture |
US6954085B2 (en) | 2003-10-13 | 2005-10-11 | International Business Machines Corporation | System and method for dynamically executing a function in a programmable logic array |
JP4842909B2 (ja) | 2004-08-30 | 2011-12-21 | 株式会社日立製作所 | ストレージシステム及びデータ再配置制御装置 |
JP4479431B2 (ja) | 2004-09-14 | 2010-06-09 | 株式会社日立製作所 | 情報ライフサイクル管理システム及びそのデータ配置決定方法 |
JP2006107338A (ja) | 2004-10-08 | 2006-04-20 | Matsushita Electric Ind Co Ltd | プログラム処理装置 |
US8117288B2 (en) * | 2004-10-12 | 2012-02-14 | International Business Machines Corporation | Optimizing layout of an application on a massively parallel supercomputer |
US20060095705A1 (en) * | 2004-10-30 | 2006-05-04 | James Wichelman | Systems and methods for data storage management |
US7574425B2 (en) | 2004-12-03 | 2009-08-11 | International Business Machines Corporation | System and method for query management in a database management system |
US7743366B2 (en) * | 2005-10-03 | 2010-06-22 | Arm Limited | System and method for compiling a computer program |
US8327370B2 (en) * | 2005-10-27 | 2012-12-04 | International Business Machines Corporation | Dynamic policy manager method, system, and computer program product for optimizing fractional resource allocation |
US20070174411A1 (en) * | 2006-01-26 | 2007-07-26 | Brokenshire Daniel A | Apparatus and method for efficient communication of producer/consumer buffer status |
US8762951B1 (en) * | 2007-03-21 | 2014-06-24 | Oracle America, Inc. | Apparatus and method for profiling system events in a fine grain multi-threaded multi-core processor |
US7644254B2 (en) * | 2007-04-18 | 2010-01-05 | International Business Machines Corporation | Routing data packets with hint bit for each six orthogonal directions in three dimensional torus computer system set to avoid nodes in problem list |
US8127273B2 (en) * | 2007-11-09 | 2012-02-28 | International Business Machines Corporation | Node selection for executing a Java application among a plurality of nodes |
US8468510B1 (en) * | 2008-01-16 | 2013-06-18 | Xilinx, Inc. | Optimization of cache architecture generated from a high-level language description |
US8281311B2 (en) * | 2008-04-24 | 2012-10-02 | International Business Machines Corporation | Executing a distributed software application on a plurality of compute nodes according to a compilation history |
US8682845B2 (en) | 2008-07-09 | 2014-03-25 | The Boeing Company | Secure high performance multi-level security database systems and methods |
WO2011031796A2 (en) | 2009-09-08 | 2011-03-17 | Fusion-Io, Inc. | Apparatus, system, and method for caching data on a solid-state storage device |
US8561046B2 (en) * | 2009-09-14 | 2013-10-15 | Oracle America, Inc. | Pipelined parallelization with localized self-helper threading |
CN104808954B (zh) * | 2009-12-24 | 2017-12-01 | 株式会社日立制作所 | 提供虚拟卷的存储系统及其控制方法 |
US8365186B2 (en) * | 2010-04-14 | 2013-01-29 | International Business Machines Corporation | Runtime optimization of an application executing on a parallel computer |
US8380703B2 (en) | 2010-07-26 | 2013-02-19 | International Business Machines Corporation | Feedback loop between a query optimizer and a cache manager |
US20120047339A1 (en) * | 2010-08-20 | 2012-02-23 | Dan Decasper | Redundant array of independent clouds |
US8713518B2 (en) * | 2010-11-10 | 2014-04-29 | SRC Computers, LLC | System and method for computational unification of heterogeneous implicit and explicit processing elements |
US9471384B2 (en) * | 2012-03-16 | 2016-10-18 | Rackspace Us, Inc. | Method and system for utilizing spare cloud resources |
US9916258B2 (en) * | 2011-03-31 | 2018-03-13 | EMC IP Holding Company LLC | Resource efficient scale-out file systems |
US8893103B2 (en) * | 2012-08-16 | 2014-11-18 | Nec Laboratories America, Inc. | Automatic asynchronous offload to many-core coprocessors |
US9436475B2 (en) * | 2012-11-05 | 2016-09-06 | Nvidia Corporation | System and method for executing sequential code using a group of threads and single-instruction, multiple-thread processor incorporating the same |
US8914778B2 (en) * | 2012-11-05 | 2014-12-16 | International Business Machines Corporation | Data placement for execution of an executable |
GB2508365A (en) | 2012-11-29 | 2014-06-04 | Ibm | Optimising a compilation parser by identifying a subset of grammar productions |
US9430400B2 (en) * | 2013-03-14 | 2016-08-30 | Nvidia Corporation | Migration directives in a unified virtual memory system architecture |
CN103207786B (zh) | 2013-04-28 | 2016-03-23 | 中国人民解放军信息工程大学 | 渐进式智能回溯向量化代码调优方法 |
JP6018022B2 (ja) * | 2013-06-14 | 2016-11-02 | 株式会社デンソー | 並列化コンパイル方法、並列化コンパイラ、並列化コンパイル装置、及び、車載装置 |
US9607036B2 (en) | 2013-08-21 | 2017-03-28 | International Business Machines Corporation | Managing a data set |
GB2519534A (en) * | 2013-10-23 | 2015-04-29 | Ibm | Persistent caching system and method for operating a persistent caching system |
US10223260B2 (en) * | 2014-03-19 | 2019-03-05 | International Business Machines Corporation | Compiler-generated memory mapping hints |
US9716738B2 (en) * | 2014-05-13 | 2017-07-25 | International Business Machines Corporation | Deploying a portion of a streaming application to one or more virtual machines according to cost |
US9274771B1 (en) * | 2014-09-22 | 2016-03-01 | Oracle International Corporation | Automated adaptive compiler optimization |
JP2016224812A (ja) * | 2015-06-02 | 2016-12-28 | 富士通株式会社 | 並列計算装置、並列処理方法、並列処理プログラムおよびコンパイルプログラム |
JP6432450B2 (ja) * | 2015-06-04 | 2018-12-05 | 富士通株式会社 | 並列計算装置、コンパイル装置、並列処理方法、コンパイル方法、並列処理プログラムおよびコンパイルプログラム |
US10249073B2 (en) * | 2015-07-21 | 2019-04-02 | Intel Corporation | Distributed frame buffer and API for scalable parallel rendering |
US10996989B2 (en) * | 2016-06-13 | 2021-05-04 | International Business Machines Corporation | Flexible optimized data handling in systems with multiple memories |
-
2016
- 2016-06-13 US US15/180,756 patent/US10996989B2/en active Active
-
2017
- 2017-02-20 CN CN201780033234.8A patent/CN109196484B/zh active Active
- 2017-02-20 JP JP2018561000A patent/JP6857196B2/ja active Active
- 2017-02-20 WO PCT/IB2017/050953 patent/WO2017216646A1/en active Application Filing
- 2017-02-20 GB GB1819786.3A patent/GB2568399A/en not_active Withdrawn
- 2017-02-20 DE DE112017001421.2T patent/DE112017001421T5/de active Pending
-
2021
- 2021-03-02 US US17/189,856 patent/US11687369B2/en active Active
-
2023
- 2023-04-05 US US18/296,012 patent/US20230244530A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN109196484A (zh) | 2019-01-11 |
US20170357445A1 (en) | 2017-12-14 |
US10996989B2 (en) | 2021-05-04 |
US11687369B2 (en) | 2023-06-27 |
JP2019526091A (ja) | 2019-09-12 |
DE112017001421T5 (de) | 2018-11-29 |
US20230244530A1 (en) | 2023-08-03 |
US20210208939A1 (en) | 2021-07-08 |
GB2568399A (en) | 2019-05-15 |
GB201819786D0 (en) | 2019-01-23 |
CN109196484B (zh) | 2023-05-16 |
WO2017216646A1 (en) | 2017-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7355404B2 (ja) | クラウド・マイクロサービス埋め込み用自動チューナ | |
CN110869909B (zh) | 应用机器学习算法来计算健康分数以进行工作负载调度的系统和方法 | |
US10326649B2 (en) | Application placement through multiple allocation domain agents and flexible cloud scheduler framework | |
US11687369B2 (en) | Flexible optimized data handling in systems with multiple memories | |
US10719366B1 (en) | Dynamic and selective hardware acceleration | |
RU2658190C2 (ru) | Управление доступом во время выполнения к интерфейсам прикладного программирования | |
WO2013040943A1 (en) | Virtual machine placement within server farm | |
KR101882383B1 (ko) | 데스크톱 가상화 환경에서의 컨테이너 자원할당 장치 및 방법 | |
US10740232B2 (en) | System, method and computer program product for accelerating iterative graph algorithms by memory layout optimization | |
US9959135B2 (en) | Pattern design for heterogeneous environments | |
US20210287108A1 (en) | Estimating performance and required resources from shift-left analysis | |
US10824481B2 (en) | Partial synchronization between compute tasks based on threshold specification in a computing system | |
US10686678B2 (en) | Device for orchestrating distributed application deployment with end-to-end performance guarantee | |
Saleem et al. | A Survey on Dynamic Application Mapping Approaches for Real-Time Network-on-Chip-Based Platforms | |
Loreti et al. | A hybrid cloud infrastructure for big data applications | |
US20240134707A1 (en) | Apparatus, articles of manufacture, and methods for managing processing units | |
US11288046B2 (en) | Methods and systems for program optimization utilizing intelligent space exploration | |
US11163603B1 (en) | Managing asynchronous operations in cloud computing environments | |
US11537445B2 (en) | Dynamic integration flows in hybrid cloud environments | |
US11263130B2 (en) | Data processing for allocating memory to application containers | |
Roozbeh | Toward Next-generation Data Centers: Principles of Software-Defined “Hardware” Infrastructures and Resource Disaggregation | |
US11741377B2 (en) | Target system optimization with domain knowledge | |
Roozbeh | Toward Next-generation Data Centers | |
Sachidananda et al. | Erlang: Application-Aware Autoscaling for Cloud Microservices | |
WO2023129761A2 (en) | Quantum computing program compilation using cached compiled quantum circuit files |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190729 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200908 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201113 |
|
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: 20210316 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210319 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6857196 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |