Surgical Software Execution Resource Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Surgical software applications often impose a high computational burden on electronic devices, leading to resource constraints that can result in undesirable events such as software crashes or failures to launch during surgical procedures.
Innovation Solution
The use of sample input datasets to test whether surgical software applications can be safely and properly executed on an electronic device, including pre-launch checks and continuous monitoring of device resources and temperature, with mitigation actions to prevent overheating and resource exhaustion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If surgical software applications are executed on the electronic device, then surgical functionality is provided, but resource constraints cause software crashes or failures to launch
Solution Approach 1:
The system performs pre-launch checks by evaluating sample input datasets before actually launching the surgical software application. This preliminary action assesses whether the device has sufficient resources (CPU, GPU, memory) to handle the application, preventing crashes and failures before they occur during critical surgical procedures.
Solution Approach 2:
The system continuously monitors device resource usage and provides feedback to determine whether to launch or terminate applications. By monitoring CPU usage, GPU usage, memory usage, and temperature in real-time, the system can dynamically adjust application execution to maintain reliability while managing limited resources effectively.
2Adaptability or versatility
If multiple surgical software applications are executed simultaneously, then comprehensive surgical functionality is achieved, but resource exhaustion and overheating occur
Solution Approach 1:
The system dynamically adjusts the number and type of simultaneously executing applications based on real-time resource conditions. When resource usage or temperature exceeds thresholds, the system automatically terminates lower-priority applications to make resources available for critical surgical functions, enabling flexible adaptation to changing operational conditions.
Solution Approach 2:
The system changes operational parameters such as CPU frequency, GPU clock speed, and memory allocation based on temperature and resource usage conditions. By dynamically adjusting these parameters, the system can maintain multiple applications when resources are abundant while preventing overheating when resources are constrained.
3Reliability
If resource thresholds are set low to prevent crashes, then software stability is improved, but application functionality is limited
Solution Approach 1:
The system performs preliminary evaluation of sample input datasets to determine the actual resource requirements of each application before setting operational thresholds. This allows the system to establish accurate, application-specific resource requirements rather than using conservative default thresholds, ensuring both stability and full functionality when resources are available.
Solution Approach 2:
The system automatically manages resource allocation and application termination without requiring manual intervention. By self-monitoring resource usage and self-adjusting application execution, the system maintains stability while maximizing productivity, as it can freely utilize available resources when conditions permit without waiting for user input.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An exemplary device for providing a plurality of surgical software applications comprises one or more processors; a plurality of surgical software applications for processing surgical data configured to be executed by the one or more processors; and one or more operating system programs for testing and providing the plurality of surgical software applications, and configured to be executed by the one or more processors. The one or more operating system programs include instructions for: receiving a user request to launch a surgical software application of the plurality of surgical software applications; retrieving one or more contract files associated with the surgical software application, comprising one or more parameters; comparing a current state of the device with the one or more parameters in the one or more contract files; and determining, based on the comparison, whether to launch the surgical software application.