Machine Vision Processor Allocation Dynamics
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Machine vision software for multiple processor computers was not optimized to adapt to various operating conditions, requiring users to manually select processor usage for each tool routine, leading to inefficiencies when not all cores were available due to contention with other programs.
Innovation Solution
A method that allows users to dynamically designate the maximum number of processors for a machine vision application program, enabling each tool routine to use the lesser of the available processors and its capability, allowing for simultaneous execution on multiple processors and flexible allocation during execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the machine vision software is configured to use all processor cores, then execution speed is improved, but flexibility to accommodate other applications deteriorates
Solution Approach 1:
The software dynamically determines the number of processor cores to use by detecting available cores at runtime and comparing against a stored maximum value, allowing flexible adaptation between maximizing execution speed and accommodating other applications based on current system conditions
2Adaptability or versatility
If users manually select processor usage for each tool routine, then adaptability to various operating conditions is improved, but device complexity and time consumption deteriorate
Solution Approach 1:
The software automatically configures processor usage for each tool routine by detecting available cores and applying the maximum limit without user intervention, making the system self-configuring while maintaining adaptability to different operating conditions
Solution Approach 2:
A single automated configuration mechanism serves all tool routines uniformly, eliminating the need for individual manual settings while maintaining adaptability across different operating conditions and application scenarios
3Productivity
If the software uses all available processor cores, then productivity is improved, but the ability to share processors with other applications deteriorates
Solution Approach 1:
The system dynamically adjusts processor allocation by detecting currently available cores at runtime and comparing against a pre-stored maximum value, enabling automatic adaptation between high-performance mode and multi-application sharing mode based on real-time system conditions
Data Source
AI summary
A machine vision system includes a computer with one or more processors and software that has a plurality of tool routines each performing a different image analysis function. A machine vision application program is created by selecting certain ones of the plurality of tool routines to analyze the image. A maximum number of processors on the computer is designated as available for executing a machine vision application, wherein the maximum number may be less than the total number of processors on the computer. When the machine vision application program operates execution of each tool routine is limited to using simultaneously no more than the maximum number of processors.

