JP2013545169A5 - - Google Patents

Download PDF

Info

Publication number
JP2013545169A5
JP2013545169A5 JP2013532828A JP2013532828A JP2013545169A5 JP 2013545169 A5 JP2013545169 A5 JP 2013545169A5 JP 2013532828 A JP2013532828 A JP 2013532828A JP 2013532828 A JP2013532828 A JP 2013532828A JP 2013545169 A5 JP2013545169 A5 JP 2013545169A5
Authority
JP
Japan
Prior art keywords
runtime
execution
tasks
independent
machines
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.)
Granted
Application number
JP2013532828A
Other languages
English (en)
Other versions
JP6010540B2 (ja
JP2013545169A (ja
Filing date
Publication date
Priority claimed from US12/900,705 external-priority patent/US9658890B2/en
Application filed filed Critical
Publication of JP2013545169A publication Critical patent/JP2013545169A/ja
Publication of JP2013545169A5 publication Critical patent/JP2013545169A5/ja
Application granted granted Critical
Publication of JP6010540B2 publication Critical patent/JP6010540B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (20)

  1. コンピュータシステムに方法を実行させるプログラムであって、前記方法は、
    ユーザコードのランタイム非依存表現の実行のためのコンピュータシステムにおける第1の実行ランタイムを、コンパイラを用いることなくランタイム非依存ライブラリによって選択することであって、前記第1の実行ランタイムは、前記ランタイム非依存表現の少なくとも1つのヒューリスティックに基づき選択される、選択することと、
    スケジューラを、コンパイラを用いることなく前記ランタイム非依存ライブラリによって呼び出して、前記第1の実行ランタイムを使用して前記コンピュータシステムで実行のための前記ランタイム非依存表現中のタスクのセットをディスパッチすることと
    を含むことを特徴とするプログラム。
  2. 請求項1に記載のプログラムであって、前記方法は、前記ユーザコードを前記タスクのセットを含む前記ランタイム非依存表現に変換することをさらに含むことを特徴とするプログラム。
  3. 請求項1に記載のプログラムであって、前記ユーザコードは、前記タスクのセットおよび前記タスクのセットの相互関係のセットを固有の方法で表すことを特徴とするプログラム。
  4. 請求項1または2に記載のプログラムであって、前記ユーザコードは、クエリー構文を使用して前記タスクのセットおよび前記タスクのセットの相互関係のセットを特定することを特徴とするプログラム。
  5. 請求項1に記載のプログラムであって、前記ランタイム非依存表現は、前記第1の実行ランタイムおよび前記第1の実行ランタイムとは異なる第2の実行ランタイムによって実行可能であることを特徴とするプログラム。
  6. 請求項1に記載のプログラムであって、前記ランタイム非依存表現は、データフローに関して前記タスクのセットを表すことを特徴するプログラム。
  7. 請求項1に記載のプログラムであって、前記ランタイム非依存表現は、DAG(有向非巡回グラフ)を形成することを特徴とするプログラム。
  8. 請求項1に記載のプログラムであって、前記第1の実行ランタイムは、シングルマシン、マシンのクラスタおよびマシンのクラウドのうちの1つに対応することを特徴とするプログラム。
  9. 請求項1に記載のプログラムであって、前記コンピュータシステムは、シングルマシン、マシンのクラスタおよびマシンのクラウドのうちの1つを含むことを特徴とするプログラム。
  10. 請求項1に記載のプログラムであって、前記スケジューラは、利用可能になるタスクに対応する入力データのセットに応じて前記タスクのセットにおけるタスクをディスパッチするように構成されていることを特徴とするプログラム。
  11. コンピュータシステムに方法を実行させるためのプログラムであって、前記方法は、
    ユーザコードにおける固有の方法で表現されるタスクのセットおよび前記タスクのセットの相互関係のセットを、コンパイラを用いることなくランタイム非依存ライブラリによって特定することと、
    前記タスクのセットおよび前記相互関係のセットを前記ユーザコードのランタイム非依存表現に、コンパイラを用いることなく前記ランタイム非依存ライブラリによって変換することと
    を含むことを特徴するプログラム。
  12. 請求項11に記載のプログラムであって、前記ランタイム非依存表現は、データフローに関して前記タスクのセットを表すことを特徴するプログラム。
  13. 請求項11に記載のプログラムであって、前記ランタイム非依存表現は、DAG(有向非巡回グラフ)を形成することを特徴とするプログラム。
  14. 請求項11に記載のプログラムであって、前記方法は、ランタイムにて前記ランタイム非依存表現の実行のための前記コンピュータシステムにおける実行ランタイムを選択することをさらに含むことを特徴とするプログラム。
  15. 請求項14に記載のプログラムであって、前記実行ランタイムは、シングルマシン、マシンのクラスタおよびマシンのクラウドのうちの1つに対応することを特徴とするプログラム。
  16. 請求項11に記載のプログラムであって、前記コンピュータシステムは、シングルマシン、マシンのクラスタおよびマシンのクラウドのうちの1つを含むことを特徴とするプログラム。
  17. 少なくとも1つのコンピュータシステムによって実行される方法であって、前記方法は、
    ユーザコードを、データフローに関してタスクのセットを表すDAG(有向非巡回グラフ)を形成するランタイム非依存表現に、コンパイラを用いることなくランタイム非依存ライブラリによって変換することであって、前記ユーザコードは前記タスクのセットおよび前記タスクのセットの相互関係のセットを固有の方法で表す、変換することと、
    前記ランタイム非依存表現の実行のための前記コンピュータシステムにおける2つまたはそれより多い実行ランタイムのセットから第1の実行ランタイムを、コンパイラを用いることなく前記ランタイム非依存ライブラリによって選択することであって、前記第1の実行ランタイムは、前記ランタイム非依存表現の少なくとも1つのヒューリスティックに基づき選択される、選択することと、
    スケジューラを、コンパイラを用いることなく前記ランタイム非依存ライブラリによって呼び出して、前記第1の実行ランタイムを使用して前記コンピュータシステムで実行のための前記ランタイム非依存表現中のタスクのセットをディスパッチすることと
    を含むことを特徴とする方法。
  18. 請求項17に記載の方法であって、前記ランタイム非依存表現は、前記第1の実行ランタイムおよび前記2つまたはそれより多い実行ランタイムのセットにおける第2の実行ランタイムによって実行可能であり、前記第2の実行ランタイムは前記第1の実行ランタイムとは異なることを特徴とする方法。
  19. 請求項17に記載の方法であって、前記第1の実行ランタイムは、シングルマシン、マシンのクラスタおよびマシンのクラウドのうちの1つに対応することを特徴とする方法。
  20. 請求項17に記載の方法であって、前記コンピュータシステムは、シングルマシン、マシンのクラスタおよびマシンのクラウドのうちの1つを含むことを特徴とする方法。
JP2013532828A 2010-10-08 2011-09-23 選択された実行ランタイムによる実行のためのユーザコードのランタイム非依存表現 Active JP6010540B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/900,705 US9658890B2 (en) 2010-10-08 2010-10-08 Runtime agnostic representation of user code for execution with selected execution runtime
US12/900,705 2010-10-08
PCT/US2011/053006 WO2012047554A1 (en) 2010-10-08 2011-09-23 Runtime agnostic representation of user code for execution with selected execution runtime

Publications (3)

Publication Number Publication Date
JP2013545169A JP2013545169A (ja) 2013-12-19
JP2013545169A5 true JP2013545169A5 (ja) 2014-10-23
JP6010540B2 JP6010540B2 (ja) 2016-10-19

Family

ID=45884656

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013532828A Active JP6010540B2 (ja) 2010-10-08 2011-09-23 選択された実行ランタイムによる実行のためのユーザコードのランタイム非依存表現

Country Status (7)

Country Link
US (1) US9658890B2 (ja)
EP (1) EP2625600A4 (ja)
JP (1) JP6010540B2 (ja)
KR (1) KR101825772B1 (ja)
CN (1) CN102402419A (ja)
CA (1) CA2813600A1 (ja)
WO (1) WO2012047554A1 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9600255B2 (en) 2010-10-08 2017-03-21 Microsoft Technology Licensing, Llc Dynamic data and compute resource elasticity
US9600250B2 (en) 2010-10-08 2017-03-21 Microsoft Technology Licensing, Llc Declarative programming model with a native programming language
US9760348B2 (en) 2010-11-29 2017-09-12 Microsoft Technology Licensing, Llc Verification of a dataflow representation of a program through static type-checking
WO2013177765A1 (en) * 2012-05-30 2013-12-05 Intel Corporation Runtime dispatching among heterogeneous group of processors
US9471651B2 (en) 2012-10-08 2016-10-18 Hewlett Packard Enterprise Development Lp Adjustment of map reduce execution
US9626261B2 (en) * 2013-11-27 2017-04-18 Futurewei Technologies, Inc. Failure recovery resolution in transplanting high performance data intensive algorithms from cluster to cloud
US9652286B2 (en) * 2014-03-21 2017-05-16 Oracle International Corporation Runtime handling of task dependencies using dependence graphs
US20160026484A1 (en) * 2014-07-25 2016-01-28 Soft Machines, Inc. System converter that executes a just in time optimizer for executing code from a guest image
US11281481B2 (en) 2014-07-25 2022-03-22 Intel Corporation Using a plurality of conversion tables to implement an instruction set agnostic runtime architecture
US9733909B2 (en) * 2014-07-25 2017-08-15 Intel Corporation System converter that implements a reordering process through JIT (just in time) optimization that ensures loads do not dispatch ahead of other loads that are to the same address
JP6690813B2 (ja) * 2014-07-25 2020-04-28 インテル・コーポレーション 変換ルックアサイドバッファを用いた命令セットアグノスティックランタイムアーキテクチャの実施
US20160026486A1 (en) * 2014-07-25 2016-01-28 Soft Machines, Inc. An allocation and issue stage for reordering a microinstruction sequence into an optimized microinstruction sequence to implement an instruction set agnostic runtime architecture
US10353680B2 (en) 2014-07-25 2019-07-16 Intel Corporation System converter that implements a run ahead run time guest instruction conversion/decoding process and a prefetching process where guest code is pre-fetched from the target of guest branches in an instruction sequence
CN105578259B (zh) * 2015-12-14 2018-10-19 四川长虹电器股份有限公司 一种基于智能电视下用户观影行为分类方法
JP6891399B2 (ja) 2016-04-11 2021-06-18 富士通株式会社 データ処理プログラム、データ処理方法およびデータ処理装置
US10409654B2 (en) 2017-07-13 2019-09-10 International Business Machines Corporation Facilitating event-driven processing using unikernels
US10402195B2 (en) * 2017-10-16 2019-09-03 General Electric Company Framework for supporting multiple analytic runtimes
CN108388474A (zh) * 2018-02-06 2018-08-10 北京易沃特科技有限公司 基于dag的智能分布式计算管理系统及方法
CN113656164B (zh) * 2021-08-30 2024-05-03 阿里巴巴(中国)有限公司 任务执行方法、系统、电子设备及计算机存储介质

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978583A (en) 1995-08-07 1999-11-02 International Business Machines Corp. Method for resource control in parallel environments using program organization and run-time support
US6182277B1 (en) 1998-04-15 2001-01-30 Oracle Corporation Methods and apparatus for declarative programming techniques in an object oriented environment
US6457172B1 (en) 1999-04-13 2002-09-24 International Business Machines Corporation Compiler for supporting multiple runtime data representations
US7100164B1 (en) * 2000-01-06 2006-08-29 Synopsys, Inc. Method and apparatus for converting a concurrent control flow graph into a sequential control flow graph
US20030033588A1 (en) * 2001-01-29 2003-02-13 John Alexander System, method and article of manufacture for using a library map to create and maintain IP cores effectively
US7210145B2 (en) 2001-10-15 2007-04-24 Edss, Inc. Technology for integrated computation and communication; TICC
US7055142B2 (en) * 2002-05-10 2006-05-30 Microsoft Corporation Permutation nuances of the integration of processes and queries as processes at queues
CN100342367C (zh) * 2002-05-10 2007-10-10 微软公司 资源的并发、分布式网络的协作
US6999958B2 (en) * 2002-06-07 2006-02-14 International Business Machines Corporation Runtime query optimization for dynamically selecting from multiple plans in a query based upon runtime-evaluated performance criterion
US7000151B2 (en) 2002-07-18 2006-02-14 Hewlett-Packard Development Company, L.P. System and method for providing run-time type checking
US7185003B2 (en) * 2002-11-14 2007-02-27 Seisint, Inc. Query scheduling in a parallel-processing database system
US8122106B2 (en) 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
US7415700B2 (en) 2003-10-14 2008-08-19 Hewlett-Packard Development Company, L.P. Runtime quality verification of execution units
US20050166182A1 (en) 2004-01-22 2005-07-28 Microsoft Corporation Distributed semantic schema
US7676791B2 (en) 2004-07-09 2010-03-09 Microsoft Corporation Implementation of concurrent programs in object-oriented languages
US7458066B2 (en) * 2005-02-28 2008-11-25 Hewlett-Packard Development Company, L.P. Computer system and method for transferring executables between partitions
US7401329B2 (en) 2005-04-25 2008-07-15 Arm Limited Compiling computer programs to exploit parallelism without exceeding available processing resources
US7774750B2 (en) 2005-07-19 2010-08-10 Microsoft Corporation Common concurrency runtime
US7853923B2 (en) 2005-12-29 2010-12-14 Sap Ag Specific runtime generators in a visual modeling language environment
US7689582B2 (en) 2006-03-10 2010-03-30 International Business Machines Corporation Data flow system and method for heterogeneous data integration environments
US7739663B2 (en) 2006-05-16 2010-06-15 International Business Machines Corporation Method, system and program product for validating a runtime environment
JP4936517B2 (ja) 2006-06-06 2012-05-23 学校法人早稲田大学 ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ
US7660884B2 (en) 2006-11-10 2010-02-09 International Business Machines Corporation Apparatus, system, and method for generating a resource utilization description for a parallel data processing system
US8010954B2 (en) 2007-02-14 2011-08-30 The Mathworks, Inc. Parallel programming interface to dynamically allocate program portions
US7926035B2 (en) 2007-04-24 2011-04-12 Microsoft Corporation Testing multi-thread software using prioritized context switch limits
US20080282238A1 (en) 2007-05-10 2008-11-13 Microsoft Corporation Static type for late binding
US8296743B2 (en) * 2007-12-17 2012-10-23 Intel Corporation Compiler and runtime for heterogeneous multiprocessor systems
US8495594B2 (en) 2008-01-10 2013-07-23 International Business Machines Corporation Method and system for providing a componentized resource adapter architecture
US7783782B2 (en) * 2008-05-23 2010-08-24 Raytheon Company Dynamic runtime service oriented architecture
US7747742B2 (en) 2008-06-27 2010-06-29 Microsoft Corporation Online predicate checking for distributed systems
US8473897B2 (en) 2008-10-03 2013-06-25 Microsoft Corporation Common intermediate representation for data scripting language
US7979844B2 (en) 2008-10-14 2011-07-12 Edss, Inc. TICC-paradigm to build formally verified parallel software for multi-core chips
US8528001B2 (en) 2008-12-15 2013-09-03 Oracle America, Inc. Controlling and dynamically varying automatic parallelization
US20100175049A1 (en) 2009-01-07 2010-07-08 Microsoft Corporation Scope: a structured computations optimized for parallel execution script language
US20100250564A1 (en) 2009-03-30 2010-09-30 Microsoft Corporation Translating a comprehension into code for execution on a single instruction, multiple data (simd) execution
US9600255B2 (en) 2010-10-08 2017-03-21 Microsoft Technology Licensing, Llc Dynamic data and compute resource elasticity
US9600250B2 (en) 2010-10-08 2017-03-21 Microsoft Technology Licensing, Llc Declarative programming model with a native programming language
US9760348B2 (en) 2010-11-29 2017-09-12 Microsoft Technology Licensing, Llc Verification of a dataflow representation of a program through static type-checking

Similar Documents

Publication Publication Date Title
JP2013545169A5 (ja)
US8495598B2 (en) Control flow graph operating system configuration
US20120324454A1 (en) Control Flow Graph Driven Operating System
Luckow et al. P∗: a model of pilot-abstractions
RU2010149255A (ru) Экземпляры планировщика в процессе
Lauderdale et al. Towards a codelet-based runtime for exascale computing: Position paper
JP2013529810A5 (ja)
JP2017062767A5 (ja)
JP2013539888A5 (ja)
JP2009520268A5 (ja)
MY181735A (en) Generating native code from intermediate language code for an application
WO2007112406A3 (en) Programming a multi-processor system
JP2010204979A5 (ja) コンパイル方法
RU2014107726A (ru) Проецирование собственных интерфейсов прикладного программирования операционной системы в другие языки программирования
WO2013029513A1 (zh) 并行模拟多个处理器的方法及系统、调度器
JP2014522063A5 (ja)
JP2014501412A5 (ja)
EP2555109A3 (en) Search utility program for software developers
CN107111505A (zh) 用于在并行异构系统上执行算法的系统和方法
WO2015032311A1 (zh) 一种代码生成方法、编译器、调度方法、装置及调度系统
JP2015503812A5 (ja)
WO2006083046A3 (en) Methods and apparatus for providing a task change application programming interface
Wozniak et al. Language features for scalable distributed-memory dataflow computing
CN103744682A (zh) 一种分开编译异构混编程序的方法和系统
Tsuji et al. Multiple-spmd programming environment based on pgas and workflow toward post-petascale computing