Deep Neural Network Execution in Trusted Execution Environment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for executing deep neural networks within a trusted execution environment (TEE) face performance bottlenecks and inefficiencies due to complex interactions and scheduling, leading to reduced execution efficiency and increased error rates.

Innovation Solution

The proposed method involves implementing a deep neural network with a hooking portion outside the TEE, where operators in the hooking portion invoke corresponding execution operators within the TEE. This approach allows for the determination of a computation graph during multiple executions, enabling efficient execution of the deep neural network within the TEE.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If deep neural network is executed entirely within TEE, then security is improved, but execution efficiency deteriorates due to complex interactions and scheduling

Engineering Contradiction:
ImprovesecurityVSAvoidexecution efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The deep neural network is segmented into two parts: a hooking portion executed outside TEE and an execution portion executed inside TEE. This segmentation allows security-critical operations to run in the isolated TEE environment while non-critical operations run outside, reducing the overhead of complete TEE execution and improving overall execution efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A computation graph is introduced as an intermediary data structure that describes the execution portion of the deep neural network. The computation graph is determined during multiple executions and then used to guide efficient execution within TEE, acting as a mediator between the hooking portion outside TEE and the execution portion inside TEE.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If computation is performed outside TEE, then execution efficiency is improved, but security deteriorates due to potential access and alteration by external programs

Engineering Contradiction:
Improveexecution efficiencyVSAvoidsecurity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The execution portion that requires high security is extracted and moved into the TEE environment, while the hooking portion that can tolerate lower security levels remains outside. This extraction ensures that sensitive computations are protected from external access and alteration while maintaining overall system efficiency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Different portions of the deep neural network are assigned different security qualities: the execution portion operates with high security within TEE, while the hooking portion operates with standard security outside TEE. This local differentiation of security quality allows the system to optimize both security and efficiency in appropriate locations.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If multiple executions are performed to determine computation graph, then accuracy of execution path identification is improved, but time consumption increases

Engineering Contradiction:
Improveaccuracy of execution path identificationVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

Multiple executions are performed in advance to determine the computation graph before actual deployment. This preliminary action identifies the optimal execution paths and structures the computation graph accordingly, ensuring accurate execution path identification that will guide efficient runtime execution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12265607B2Method, device, and computer program product for executing computer programs
Publication Date: 2025.04.01 DELL PROD LP
  • US12265607B2 patent drawing
  • US12265607B2 patent drawing
  • US12265607B2 patent drawing

AI summary

Embodiments of the present disclosure relate to a method, a device, and a computer program product for executing computer programs. The method includes implementing multiple executions of a deep neural network that includes a hooking portion outside a trusted execution environment (TEE), wherein an operator in the hooking portion, when executed outside the TEE, invokes a corresponding execution operator in the TEE. During the period, the method includes determining, on the basis of the invocation of the corresponding execution operator in the TEE by the operator in the hooking portion, a computation graph corresponding to the hooking portion. The method further includes executing, on the basis of the computation graph, the execution operator corresponding to the hooking portion in the TEE during the execution of the deep neural network after the multiple executions.