Scale computing in deterministic cloud environments
US-2024370302-A1 · Nov 7, 2024 · US
US2016378443A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016378443-A1 |
| Application number | US-201514751519-A |
| Country | US |
| Kind code | A1 |
| Filing date | Jun 26, 2015 |
| Priority date | Jun 26, 2015 |
| Publication date | Dec 29, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Various embodiments are generally directed to techniques for supporting the distributed execution of a task routine among multiple secure controllers incorporated into multiple computing devices. An apparatus includes a first processor component and first secure controller of a first computing device, where the first secure controller includes: a selection component to select the first secure controller or a second secure controller of a second computing device to compile a task routine based on a comparison of required resources to compile the task routine and available resources of the first secure controller; and a compiling component to compile the task routine into a first version of compiled routine for execution within the first secure controller by the first processor component and a second version for execution within the second secure controller by a second processor component in response to selection of the first secure controller. Other embodiments are described and claimed.
Opening claim text (preview).
1 . An apparatus comprising: a first processor component; and a first secure controller of a first computing device, the first secure controller comprising: a selection component to select one of the first secure controller and a second secure controller of a second computing device to compile a task routine based at least on a comparison of a required resource to compile the task routine and an available resource of the first secure controller; and a compiling component to compile the task routine into a first version of a compiled routine for execution within the first secure controller by the first processor component and a second version of the compiled routine for execution within the second secure controller by a second processor component in response to a selection of the first secure controller to compile the task routine. 2 . The apparatus of claim 1 , the compiling component comprising: a first compiler to compile the task routine to generate the first version of the compiled routine; and a second compiler selected by the compiling component to separately compile the task routine to generate the second version of the compiled routine based on an indication received from the second secure controller of an aspect of the second processor component. 3 . The apparatus of claim 1 , the compiling component comprising: a compiler to compile the task routine to generate the first version of the compiled routine; and a thunking component to translate the first version of the compiled routine to generate the second version of the compiled routine to enable use of at least one of a feature unique to the first processor component or a feature unique to the second processor component through the generation of the first and second versions based on an indication received from the second secure controller of an aspect of the second processor component. 4 . The apparatus of claim 1 , the selection component to repeatedly exchange at least a portion of a device data with the second secure controller, the portion of device data comprising an indication of at least one of an aspect of the first processor component, an aspect of the second processor component, the available resource of the first secure controller, an available resource of the second secure controller, an aspect of a connection of the first computing device to a network extending between the first and second computing devices, or an aspect of a connection of the second computing device to the network. 5 . The apparatus of claim 4 , comprising an execution component to execute at least a portion of the first version of the compiled routine, the selection component to cooperate with the second secure controller to determine whether the first processor component is to execute at least a first portion of the first version of the compiled routine corresponding to a first function of the task routine, and to determine whether the second processor component is to execute at least a second portion of the second version of the compiled routine corresponding to a second function of the task routine. 6 . The apparatus of claim 5 , the execution component to execute at least the first portion of the first version of the compiled routine at least partly in parallel with the compiling component compiling the task routine to generate at least a third portion of the first version of the compiled routine corresponding to a third function of the task routine, and to exchange an indication of a result of execution of at least one of the first portion of the first version of the compiled routine or the second portion of the second version of the compiled routine with the second secure controller. 7 . The apparatus of claim 1 , comprising another processor component external to the first secure controller, the other processor component to execute at least one of an operating system or an application routine, the first secure controller comprising the first processor component, and the first processor component to execute the selection component and the compiling component within the first secure controller in isolation from the other processor component. 8 . The apparatus of claim 1 , the first secure controller comprising a virtual secure controller provided by the first processor component, and the first processor component to execute the selection component and the compiling component within the first controller in isolation from execution of at least one of an operating system and an application routine by the first processor component. 9 . A computer-implemented method comprising: selecting one of a first secure controller of a first computing device and a second secure controller of a second computing device to compile a task routine based at least on a comparison of a required resource to compile the task routine and an available resource of the first secure controller; and compiling, using a first processor component of the first secure controller, the task routine into a first version of a compiled routine for execution within the first secure controller by the first processor component and a second version of the compiled routine for execution within the second secure controller by a second processor component in response to a selection of the first secure controller to compile the task routine. 10 . The computer-implemented method of claim 9 , the method comprising: analyzing the task routine to determine the required resource; transmitting an indication of the required resource to the second secure controller; and cooperating with the second controller to select one of the first secure controller and the second secure controller to compile the task routine. 11 . The computer-implemented method of claim 10 , the method comprising transmitting an indication of the available resource to the second secure controller to enable the cooperation. 12 . The computer-implemented method of claim 9 , the method comprising: compiling the task routine to generate the first version of the compiled routine; and separately compiling the task routine to generate the second version of the compiled routine based on an indication received from the second secure controller of an aspect of the second processor component. 13 . The computer-implemented method of claim 9 , the method comprising: compiling the task routine to generate the first version of the compiled routine; and translating the first version of the compiled routine to generate the second version of the compiled routine to enable use of at least one of a feature unique to the first processor component or a feature unique to the second processor component through the generation of the first and second versions based on an indication received from the second secure controller of an aspect of the second processor component. 14 . At least one tangible machine-readable storage medium comprising instructions that when executed by a first processor component, cause the first processor component to: select one of a first secure controller of a first computing device and a second secure controller of a second computing device to compile a task routine based at least on a comparison of a required resource to compile the task routine and an available resource of the first secure controller; and compile, using a first processor component, the task routine into a first version of a compiled routine for execution within the first secure controller by the first processor component and a second version of the compiled routine for execution within the second secure controller by a second processor component in response to a selection of the fi
Compilation · CPC title
considering hardware capabilities · CPC title
Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities · CPC title
Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity · CPC title
Runtime code conversion or optimisation · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.