WO2011023203A1 - Improved execution of real time applications with an automation controller - Google Patents

Improved execution of real time applications with an automation controller Download PDF

Info

Publication number
WO2011023203A1
WO2011023203A1 PCT/EP2009/006120 EP2009006120W WO2011023203A1 WO 2011023203 A1 WO2011023203 A1 WO 2011023203A1 EP 2009006120 W EP2009006120 W EP 2009006120W WO 2011023203 A1 WO2011023203 A1 WO 2011023203A1
Authority
WO
WIPO (PCT)
Prior art keywords
tasks
automation
core
parallel
control
Prior art date
Application number
PCT/EP2009/006120
Other languages
French (fr)
Inventor
Rainer Draht
Original Assignee
Abb Technology Ag
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 Abb Technology Ag filed Critical Abb Technology Ag
Priority to PCT/EP2009/006120 priority Critical patent/WO2011023203A1/en
Priority to EP09778068A priority patent/EP2470991A1/en
Priority to CN2009801610952A priority patent/CN102498470A/en
Publication of WO2011023203A1 publication Critical patent/WO2011023203A1/en
Priority to US13/404,986 priority patent/US9400696B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41885Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the invention relates to a method and a device for performing the computational execution of control tasks of an automation system with automation devices by means of one or more Central Processing Units (CPU).
  • CPU Central Processing Units
  • a control device In industrial applications, a control device usually performs a variety of control tasks at the same time in parallel. Since usually more automation tasks have to be executed than CPUs are available, the simultaneous execution of the automation tasks on a single or multi core CPU is solved by a real time system which decomposes the different automation tasks into small pieces of code which are executed sequentially. Real time behavior of parallel automation tasks is reached e.g. by a real time operating system, an interrupt system including an interrupt controller, semaphore concepts or priorization concepts.
  • Contemporary control systems additionally provide a graphical visualization of automation relevant information. This is used in order to display operator graphics and 'to provide a human machine interface.
  • Modern graphic adapters provide a significant calculation power with dozens or hundreds of parallel calculation units.
  • the overall calculation unit of a graphics adapter is called GPU.
  • the GPU is exclusively used for graphic applications.
  • 3D three- dimensional
  • the computing system includes a CPU memory space for storing one or more graphics-based applications, one or more CPUs for executing the graphics-based applications, and a bridge circuit operably connecting one or more CPUs and the CPU memory space and including an integrated graphics device (IGD) having one or more GPUs.
  • IGD integrated graphics device
  • the computing system includes one or more graphics cards supporting multiple GPUs and being connected to the bridge circuit by way of a data communication interface, a multi-mode parallel graphics rendering subsystem supporting multiple modes of parallel operation, a plurality of graphic processing pipelines (GPPLs), implemented using the GPUs, and an automatic mode control module.
  • GPPLs graphic processing pipelines
  • the IGD has one internal GPU, and the external graphics card(s) supports multiple GPUs.
  • the automatic mode control module automatically controls the mode of parallel operation of the multi-mode parallel graphics rendering subsystem so that the GPUs are driven in a parallelized manner.
  • Dependency relations among elements corresponding to scheduled executables are determined to select an executable to be executed by a plurality of threads concurrently in more than one of the physical compute devices.
  • a thread initialized for executing an executable in a GPU of the physical compute devices are initialized for execution in another CPU of the physical compute devices if the GPU is busy with graphics processing threads.
  • Sources and existing executables for an application processing interface (API) function are stored in an API library to execute a plurality of executables in a plurality of physical compute devices, including the existing executables and online compiled executables from the sources.
  • API application processing interface
  • Graphic adapters of today are capable of running a big number of different calculation tasks coincidentally by means of parallelization of the calculation processes. This is possible due to the fact that graphic processing units dispose of a plurality of graphic processing pipelines supporting multiple modes of parallel operation.
  • PLC Programmable Logic Controllers
  • DCS Distribution Control Systems
  • IPC Industrial-PCs
  • PAC Programmable Automation Controllers
  • RC Robot Controllers
  • MC Motion Controllers
  • CPU Central Processor Unit
  • control tasks or control algorithms are executed by the single-core or multi-core control unit (CPU) and a multi-core graphics processor (GPU) or both at the same time.
  • the principle and central idea of this invention are the utilization of the parallel architecture of GPUs for the execution of real time applications on an automation device, e.g. on a PLC or a robot controller. Since the number of parallel calculation units available situated on a graphics adapter in one or more GPUs exceeds the typical number of parallel tasks of an automation system, the costly effort of parallelization and management of a real time system is no more required. The possibility of massive parallelization allows running each control task exclusively at one or more designated calculation units. This increases the available performance significantly and allows designing simplified real time architecture.
  • An embodiment of this invention is to associate the majority of control task on at least one calculation unit.
  • Another embodiment of this invention is the combined utilization of multi core CPUs with the parallel calculation units of a graphics adapter namely one or more GPUs at the same time.
  • a PLC or Soft-PLC can run different automation tasks or algorithms each on a separate set of calculation units and can thus provide high performance real time behavior.
  • Robot Controller, Motion Controller or their virtual pendants can control different axles on each a separate set of calculation units each comparable to a single task running on a single CPU.
  • PLCs, Robot Controllers and Motion Controllers can be combined into ohe automation device which runs the different automation tasks each on a separate set of parallel units.
  • the parallel architecture of GPUs allows a parallel execution of parallel tasks i.e. simultaneously.
  • the decomposition of automation tasks can be reduced or can be avoided.
  • Independent control algorithms can be executed in parallel at the same time. Hence the performance of such automation devices is enhanced impressively.
  • Real time concepts can be significantly simplified. The complex and time consuming decomposition of parallel tasks into a sequence of small code fragments can be reduced or avoided. This allows designing new real time architectures based on parallel single tasks running on parallel and associated calculation units.
  • the calculation power of graphic adapters is being utilized in order to have a powerful processing unit for processing multiple single tasks in automation applications in parallel i.e. simultaneously. Since a plurality of automation applications need sufficient processing capability the existing processing power of graphic adapters for simultaneous calculation processes by parallelization of processing pipelines.

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Manipulator (AREA)

Abstract

The invention relates to a method and a device for performing the computational execution of automation tasks with automation devices by means of a combination of one or more central processing units (CPU) and one or more Graphics Processing Units (GPU) wherein the control tasks or control algorithms are executed by the single-core or multi-core control unit (CPU) and a multi-core -graphics processor (GPU) or both in parallel at the same time.

Description

Improved execution of real time applications with an automation controller
Description Field of the Invention
The invention relates to a method and a device for performing the computational execution of control tasks of an automation system with automation devices by means of one or more Central Processing Units (CPU).
Background of the Invention
In industrial applications, a control device usually performs a variety of control tasks at the same time in parallel. Since usually more automation tasks have to be executed than CPUs are available, the simultaneous execution of the automation tasks on a single or multi core CPU is solved by a real time system which decomposes the different automation tasks into small pieces of code which are executed sequentially. Real time behavior of parallel automation tasks is reached e.g. by a real time operating system, an interrupt system including an interrupt controller, semaphore concepts or priorization concepts.
Contemporary control systems additionally provide a graphical visualization of automation relevant information. This is used in order to display operator graphics and 'to provide a human machine interface. Modern graphic adapters provide a significant calculation power with dozens or hundreds of parallel calculation units. The overall calculation unit of a graphics adapter is called GPU. However, the GPU is exclusively used for graphic applications. Over the last years, much of the research and development in the graphics architecture field has been concerned the ways to improve the performance of three- dimensional (3D) computer graphics rendering. Graphics architecture is driven by the same advances in semiconductor technology that have driven general-purpose computer architecture.
Many of the same acceleration techniques have been used in this field, including pipelining and parallelism. The graphics rendering application, however, imposes special demands and makes available new opportunities. For example, since image display generally involves a large number of repetitive calculations, it can more easily exploit massive parallelism than can general-purpose computations.
According to US 2008198167 A1 a computing system has been developed which is capable of parallelizing the operation of multiple graphics processing units (GPUs) supported on external graphics cards, employing a software-implemented multi-mode parallel graphics rendering subsystem.
The computing system includes a CPU memory space for storing one or more graphics-based applications, one or more CPUs for executing the graphics-based applications, and a bridge circuit operably connecting one or more CPUs and the CPU memory space and including an integrated graphics device (IGD) having one or more GPUs.
Furthermore the computing system includes one or more graphics cards supporting multiple GPUs and being connected to the bridge circuit by way of a data communication interface, a multi-mode parallel graphics rendering subsystem supporting multiple modes of parallel operation, a plurality of graphic processing pipelines (GPPLs), implemented using the GPUs, and an automatic mode control module.
In an illustrative embodiment, the IGD has one internal GPU, and the external graphics card(s) supports multiple GPUs. During the run-time of the graphics-based application, the automatic mode control module automatically controls the mode of parallel operation of the multi-mode parallel graphics rendering subsystem so that the GPUs are driven in a parallelized manner.
In US 2008276262 A1 a method and an apparatus that schedule a plurality of execu- tables in a schedule queue for execution in one or more physical compute devices such as CPUs or GPUs concurrently are described. One or more executables are compiled online from a source having an existing executable for a type of physical compute devices different from the one or more physical compute devices.
Dependency relations among elements corresponding to scheduled executables are determined to select an executable to be executed by a plurality of threads concurrently in more than one of the physical compute devices. A thread initialized for executing an executable in a GPU of the physical compute devices are initialized for execution in another CPU of the physical compute devices if the GPU is busy with graphics processing threads.
Sources and existing executables for an application processing interface (API) function are stored in an API library to execute a plurality of executables in a plurality of physical compute devices, including the existing executables and online compiled executables from the sources.
All these developments are directed to the original purpose of the graphics adapters i.e. the rendering of graphical content as images or movies stored in a computer whereat the speed of the rendering as well as the resolution have been improved tremendously. Publications in this field of technology concentrate on the improving the performance of graphic adapters in order to improve the quality and speed of the rendering.
In other words the increase of computational capability of the electronic processing units most notably with regard to graphics adapters has not been expected, in particular not to that extent.
Graphic adapters of today are capable of running a big number of different calculation tasks coincidentally by means of parallelization of the calculation processes. This is possible due to the fact that graphic processing units dispose of a plurality of graphic processing pipelines supporting multiple modes of parallel operation.
Recently, major vendors and/or manufacturers of graphic adapters provide programming interfaces to execute arbitrary code on the graphical unit which is not designated to graphic tasks. Complex algorithms for video transcoding, solution of differential equations or finite element analysis can already utilize the GPU power. A use in industrial applications and in particular in automation applications however is not available at present.
Hence it is a main object of this invention to make the computational power of the graphic processing units available for the control of automation systems. In particular it is an object of this invention to utilize the parallel architecture of multi core graphic processing units, for example the graphic processing unit of a graphic adapter, for the control of multiple, complex and distributed plant components all belonging to the respective automation system.
Given the foregoing, what is needed is a method and system for performing control of those plant components by utilization of one or more GPUs.
Brief Summary of the Invention
The computational execution of automation tasks with automation devices like Programmable Logic Controllers (PLC), Distribution Control Systems (DCS), Industrial-PCs (IPC), Programmable Automation Controllers (PAC), Robot Controllers (RC) or Motion Controllers (MC) requires usually a Central Processor Unit (CPU) which executes the instructions of the control software.
Hence according to this invention the control tasks or control algorithms are executed by the single-core or multi-core control unit (CPU) and a multi-core graphics processor (GPU) or both at the same time. The principle and central idea of this invention are the utilization of the parallel architecture of GPUs for the execution of real time applications on an automation device, e.g. on a PLC or a robot controller. Since the number of parallel calculation units available situated on a graphics adapter in one or more GPUs exceeds the typical number of parallel tasks of an automation system, the costly effort of parallelization and management of a real time system is no more required. The possibility of massive parallelization allows running each control task exclusively at one or more designated calculation units. This increases the available performance significantly and allows designing simplified real time architecture.
An embodiment of this invention is to associate the majority of control task on at least one calculation unit.
Another embodiment of this invention is the combined utilization of multi core CPUs with the parallel calculation units of a graphics adapter namely one or more GPUs at the same time.
Beneficial automation applications related to this invention are:
• A PLC or Soft-PLC can run different automation tasks or algorithms each on a separate set of calculation units and can thus provide high performance real time behavior.
• Robot Controller, Motion Controller or their virtual pendants can control different axles on each a separate set of calculation units each comparable to a single task running on a single CPU.
• PLCs, Robot Controllers and Motion Controllers can be combined into ohe automation device which runs the different automation tasks each on a separate set of parallel units.
• The parallel architecture of GPUs allows a parallel execution of parallel tasks i.e. simultaneously. The decomposition of automation tasks can be reduced or can be avoided. Independent control algorithms can be executed in parallel at the same time. Hence the performance of such automation devices is enhanced impressively.
• Real time concepts can be significantly simplified. The complex and time consuming decomposition of parallel tasks into a sequence of small code fragments can be reduced or avoided. This allows designing new real time architectures based on parallel single tasks running on parallel and associated calculation units.
• The virtualization of one or more control devices (virtual robot controller, virtual motion controller, virtual PLC) is simplified. The additional GPU power can be used in order to increase the responsiveness and real time behavior of the device simulation.
With this invention, the calculation power of graphic adapters is being utilized in order to have a powerful processing unit for processing multiple single tasks in automation applications in parallel i.e. simultaneously. Since a plurality of automation applications need sufficient processing capability the existing processing power of graphic adapters for simultaneous calculation processes by parallelization of processing pipelines.

Claims

Claims
1. Method of performing the computational execution of multiple automation
tasks with automation control devices comprising a single-core or multi-core control unit characterized in that
the control tasks or control algorithms are executed by at least one multi-core graphics processor unit (GPU).
2. Method according to claim 1 , wherein the control tasks or control algorithms are being executed by at least one single-core or multi-core control unit (CPU) and at least one multi-core graphics processor unit (GPU) at the same time.
3. Method according to claims 1 or 2, wherein the multi task architecture is replaced by architecture of parallel single tasks running parallel on at least one calculation unit of the GPU.
4. Method according to one of the preceding claims, wherein the majority of single tasks are running simultaneously on parallel calculation units of the at least one GPU.
5. Method according to one of the preceding claims, wherein different automation tasks are assigned to a single automation device running the different tasks independently and in parallel.
6. Method according to one of the preceding claims, wherein at least one automation control device is simulated or emulated and is acting as one virtual control device.
7. Method according to one of the preceding claims, wherein a PLC or Soft-PLC is running different automation tasks or algorithms each on a separate set of calculation units and can thus provide high performance real time behavior.
8. Method according to one of the preceding claims, wherein a robot controller, motion controller or their virtual pendants is controlling different axles on each a separate set of calculation units each comparable to a single task running on a single CPU.
9. Method according to one of the preceding claims, wherein PLCs, Robot Controllers and Motion Controllers are being combined into one automation device which runs the different automation tasks on each a separate set of parallel units.
10. System comprising industrial applications and device's, such as industrial machines and apparatuses, according to one of the preceding claims, wherein the industrial applications and devices are subject to automation purposes and being controlled by control tasks or control algorithms being executed by the single-core or multi-core control unit (CPU) and a multi-core graphics processor (GPU) or both at the same time.
11. System according to claim 10 wherein the multi task architecture of the single- core or multi-core units is replaced by architecture of parallel single tasks running parallel on at least one calculation unit of the GPU.
12. System according to claims 10 or 11 wherein different automation tasks are assigned to a single automation device running the different tasks independently and in parallel.
13. System according to one of the claims 10 to 12 wherein at least one automation control device is simulated or emulated and is acting as one virtual control device.
14. System according to one of the claims 10 to 13 wherein a PLC or Soft-PLC is running different automation tasks or algorithms each on a separate set of calculation units and can thus provide high performance real time behavior.
15. System according to one of the claims 10 to 14, wherein a robot controller, motion controller or their virtual pendants is controlling different axles on each a separate set of calculation units each comparable to a single task running on a single CPU.
16. System according to one of the claims 10 to 15, wherein PLCs, Robot Controllers and Motion Controllers are being combined into one automation device which runs the different automation tasks on each a separate set of parallel units.
PCT/EP2009/006120 2009-08-24 2009-08-24 Improved execution of real time applications with an automation controller WO2011023203A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/EP2009/006120 WO2011023203A1 (en) 2009-08-24 2009-08-24 Improved execution of real time applications with an automation controller
EP09778068A EP2470991A1 (en) 2009-08-24 2009-08-24 Improved execution of real time applications with an automation controller
CN2009801610952A CN102498470A (en) 2009-08-24 2009-08-24 Improved execution of real time applications with an automation controller
US13/404,986 US9400696B2 (en) 2009-08-24 2012-02-24 Execution of real time applications with an automation controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2009/006120 WO2011023203A1 (en) 2009-08-24 2009-08-24 Improved execution of real time applications with an automation controller

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/404,986 Continuation US9400696B2 (en) 2009-08-24 2012-02-24 Execution of real time applications with an automation controller

Publications (1)

Publication Number Publication Date
WO2011023203A1 true WO2011023203A1 (en) 2011-03-03

Family

ID=42199936

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2009/006120 WO2011023203A1 (en) 2009-08-24 2009-08-24 Improved execution of real time applications with an automation controller

Country Status (4)

Country Link
US (1) US9400696B2 (en)
EP (1) EP2470991A1 (en)
CN (1) CN102498470A (en)
WO (1) WO2011023203A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102692892A (en) * 2011-03-22 2012-09-26 西门子公司 NC controller and NC machine tool
WO2013139623A1 (en) * 2012-03-20 2013-09-26 Siemens Aktiengesellschaft Method for operating a process and/or production plant, control device of such a plant and module for the control device
EP2755134A1 (en) 2013-01-14 2014-07-16 Siemens Aktiengesellschaft Control of a technical installation with a CPU and GPU
EP2950175A1 (en) * 2014-05-27 2015-12-02 dSPACE digital signal processing and control engineering GmbH Process and apparatus for the test of a control device

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014110748A1 (en) * 2013-01-17 2014-07-24 Abb Technology Ltd. Motion controller and robot control system using the same
US9501300B2 (en) 2013-09-16 2016-11-22 General Electric Company Control system simulation system and method
CN103716574A (en) * 2013-12-13 2014-04-09 乐视致新电子科技(天津)有限公司 Signal processing method and digital television
CN104972362B (en) * 2014-04-14 2017-10-31 沈阳远大科技园有限公司 Intelligent Force man-controlled mobile robot grinding system and method
GB2524346B (en) * 2014-09-19 2016-12-21 Imagination Tech Ltd Separating Cores
CN105574807A (en) * 2015-12-11 2016-05-11 中国航空工业集团公司西安航空计算技术研究所 Development platform of programmable stainer embedded into graphics processor
CN106686352B (en) * 2016-12-23 2019-06-07 北京大学 The real-time processing method of the multi-path video data of more GPU platforms
CN114609979A (en) * 2020-12-08 2022-06-10 山东新松工业软件研究院股份有限公司 Universal motion control device and method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008127610A2 (en) * 2007-04-11 2008-10-23 Apple Inc. Application interface on multiple processors

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4920487A (en) * 1988-12-12 1990-04-24 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Method of up-front load balancing for local memory parallel processors
US6173066B1 (en) * 1996-05-21 2001-01-09 Cybernet Systems Corporation Pose determination and tracking by matching 3D objects to a 2D sensor
US7016539B1 (en) * 1998-07-13 2006-03-21 Cognex Corporation Method for fast, robust, multi-dimensional pattern recognition
JP2005525550A (en) * 2002-05-14 2005-08-25 アマーシャム バイオサイエンセズ ナイアガラ,インク. Rapid automated screening system and method for cells
WO2004052598A1 (en) * 2002-12-12 2004-06-24 Matsushita Electric Industrial Co., Ltd. Robot control device
US20050028133A1 (en) * 2003-08-02 2005-02-03 Viswanath Ananth System and method for rapid design, prototyping, and implementation of distributed scalable architecture for task control and automation
US7331019B2 (en) * 2003-08-02 2008-02-12 Pathway Technologies, Inc. System and method for real-time configurable monitoring and management of task performance systems
US20070061041A1 (en) * 2003-09-02 2007-03-15 Zweig Stephen E Mobile robot with wireless location sensing apparatus
US20080074428A1 (en) * 2003-11-19 2008-03-27 Reuven Bakalash Method of rendering pixel-composited images for a graphics-based application running on a computing system embodying a multi-mode parallel graphics rendering system
US7185411B2 (en) * 2004-01-30 2007-03-06 Ethicon, Inc. Method and apparatus for forming fine gauge and monofilament single and double-armed sutures
US9384583B2 (en) * 2006-10-27 2016-07-05 Nvidia Corporation Network distributed physics computations
US8286196B2 (en) * 2007-05-03 2012-10-09 Apple Inc. Parallel runtime execution on multiple processors
US8229134B2 (en) * 2007-05-24 2012-07-24 University Of Maryland Audio camera using microphone arrays for real time capture of audio images and method for jointly processing the audio images with video images
US20090086021A1 (en) * 2007-09-27 2009-04-02 Rockwell Automation Technologies, Inc. Dynamically generating real-time visualizations in industrial automation environment as a function of contect and state information
DE102008005124A1 (en) * 2008-01-18 2009-07-23 Kuka Roboter Gmbh Computer system, control device for a machine, in particular for an industrial robot, and industrial robots
US8055856B2 (en) * 2008-03-24 2011-11-08 Nvidia Corporation Lock mechanism to enable atomic updates to shared memory
US8386672B2 (en) * 2008-07-08 2013-02-26 Dell Products L.P. Systems, methods and media for disabling graphic processing units
US8041550B1 (en) * 2008-07-25 2011-10-18 Nvidia Corporation Two-way rigid body coupling in shallow water simulations

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008127610A2 (en) * 2007-04-11 2008-10-23 Apple Inc. Application interface on multiple processors

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
"THE PEAKSTREAM PLATFORM: High Productivity Software development for Multi-Core Processors", PEAKSTREAM,, 5 March 2007 (2007-03-05), pages 1 - 12, XP002502799 *
B. WALTER ET AL: "UAV Swarm Control: Calculating Digital Pheromone Fields with the GPU", INTERSERVICE/INDUSTRY TRAINING SIMULATION, AND EDUCATION CONFERENCE (I/ITSEC), 2005, XP002585287, Retrieved from the Internet <URL:http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.130.8654&rep=rep1&type=pdf> [retrieved on 20100527] *
MASATOMO INUI ET AL: "Using a GPU to Accelerate Die and Mold Fabrication", IEEE COMPUTER GRAPHICS AND APPLICATIONS, IEEE SERVICE CENTER, NEW YORK, NY, US LNKD- DOI:10.1109/MCG.2007.23, vol. 27, no. 1, 1 January 2007 (2007-01-01), pages 82 - 88, XP011154593, ISSN: 0272-1716 *
RIEFFEL J ET AL: "Evolving Soft Robotic Locomotion in PhysX", INTERNET CITATION, 8 July 2009 (2009-07-08), pages 1 - 6, XP002575545, ISBN: 978-1-60558-505-5, Retrieved from the Internet <URL:http://cs.union.edu/~rieffelj/papers/rieffel-gecco-2009.pdf> [retrieved on 20100326] *
See also references of EP2470991A1 *
TARDITI D ET AL: "Accelerator: using data parallelism to program GPUs for general-purpose uses", INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS ; 12TH (SAN JOSE, CALIF.) : 2006, NEW YORK, N.Y : ASSOCIATION FOR COMPUTING MACHINERY, 21 October 2006 (2006-10-21), pages 325 - 335, XP002500986, ISBN: 978-1-59593-451-2 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102692892A (en) * 2011-03-22 2012-09-26 西门子公司 NC controller and NC machine tool
WO2013139623A1 (en) * 2012-03-20 2013-09-26 Siemens Aktiengesellschaft Method for operating a process and/or production plant, control device of such a plant and module for the control device
EP2755134A1 (en) 2013-01-14 2014-07-16 Siemens Aktiengesellschaft Control of a technical installation with a CPU and GPU
EP2950175A1 (en) * 2014-05-27 2015-12-02 dSPACE digital signal processing and control engineering GmbH Process and apparatus for the test of a control device
US10229531B2 (en) 2014-05-27 2019-03-12 Dspace Digital Signal Processing And Control Engineering Gmbh Method and device for testing a control unit

Also Published As

Publication number Publication date
CN102498470A (en) 2012-06-13
EP2470991A1 (en) 2012-07-04
US9400696B2 (en) 2016-07-26
US20120162235A1 (en) 2012-06-28

Similar Documents

Publication Publication Date Title
US9400696B2 (en) Execution of real time applications with an automation controller
US20210311707A1 (en) Method and system of command buffer between a cpu and gpu
CN112292667B (en) Method and apparatus for selecting processor
CN105487838A (en) Task-level parallel scheduling method and system for dynamically reconfigurable processor
US20220365783A1 (en) Matrix multiplication and accumulation operations on compressed matrices
US20220113784A1 (en) Techniques to power balance multiple chips
EP3822770A1 (en) Techniques for modifying an executable graph to perform a workload associated with a new task graph
US20220300578A1 (en) Application programming interface to accelerate matrix operations
CN115129464A (en) Stochastic sparsity handling in systolic arrays
CN114902179A (en) Method and apparatus for performing matrix multiplication in a streaming processor
WO2023137463A1 (en) Operations on matrix operands irrespective of where operands are stored in memory
US20230244942A1 (en) Tensor modification based on processing resources
WO2011023204A1 (en) Simulation of distributed virtual control systems
EP3822785A1 (en) Techniques for modifying executable graphs to perform different workloads
EP4213459A1 (en) Network multicasting using alternate sets of directives
WO2022221569A1 (en) Application programming interface to identify memory
Christodoulis et al. An FPGA target for the StarPU heterogeneous runtime system
US12081361B2 (en) Predicting inactivity patterns for a signal conductor
US20240112296A1 (en) Generating and interposing interpolated frames with application frames for display
US20230185642A1 (en) Application programming interface to retrieve portions of an image
US20230222619A1 (en) Techniques for using contextual information
US20230185641A1 (en) Application programming interface to store portions of an image
US20240126967A1 (en) Semi-automatic tool to create formal verification models
US20240231830A1 (en) Workload assignment technique
US20230385093A1 (en) Adaptive task scheduling for virtualized environments

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200980161095.2

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09778068

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 301/KOLNP/2012

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2009778068

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE