Artificial intelligence computing device implementation method and device and electronic device
By configuring integrated graphics cards and independent graphics cards in computing devices and dynamically allocating tasks according to task type and system load, the problems of high application cost of AI technology and complex motherboard design are solved, and an efficient and smooth AI computing experience is achieved.
Patent Information
- Application Number
- CN202411658477.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-19
- Publication Date
- 2025-02-25
AI Technical Summary
The application of existing AI technology relies on high-performance computing resources, resulting in high costs and complex motherboard design, hindering the large-scale popularization of AI technology at the level of ordinary consumers.
By configuring integrated graphics cards and independent graphics cards, identifying the main and secondary cards based on the multi-display mode setting information, and dynamically assigning tasks according to the task type and the current system load, assigning graphic rendering and display tasks to integrated graphics cards, and assigning AI computing tasks to independent graphics cards.
It has achieved the improvement of AI computing efficiency without increasing the economic burden on users, avoiding interface lag caused by AI tasks occupancy, and reducing the complexity and cost of motherboard design.
Smart Images

Figure CN119512755A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computers, and in particular to an implementation method, implementation device and electronic device for an artificial intelligence computing device. Background Art
[0002] With the development of AI (Artificial Intelligence) technology, users' demand for PCs (Personal Computers) with AI functions is growing. However, the current application of AI technology usually relies on high-performance computing resources, such as hardware devices such as GPUs (Graphics Processing Units) that support AI computing and NPUs (Neural Processing Units) specifically for accelerating neural network processing. Although these hardware solutions can provide powerful AI computing capabilities, they are also accompanied by higher costs, which not only increases the economic burden on users, but also increases the complexity of motherboard design, thereby hindering the large-scale popularization of AI technology at the level of ordinary consumers. Summary of the invention
[0003] The embodiment of the present application provides a method for implementing an artificial intelligence computing device, wherein the computing device is configured with an integrated graphics card and an independent graphics card, including:
[0004] Identify the primary card and the secondary card according to the multi-display mode setting information, wherein the multi-display mode setting information sets the integrated graphics card as the primary card of the computing device and the independent graphics card as the secondary card of the computing device;
[0005] Assign tasks to the integrated graphics card and the independent graphics card according to the task type and the current system load; wherein, the graphics rendering and display tasks are assigned to the integrated graphics card, and the AI computing tasks are assigned to the independent graphics card; the task types include graphics rendering and display types and artificial intelligence computing types; the current system load includes one or more of CPU usage, memory usage, GPU usage, disk I / O, network bandwidth and graphics processing requirements.
[0006] Optionally, identifying the primary card and the secondary card according to the multi-display mode setting information includes acquiring the multi-display mode setting information from a BIOS, and the acquisition process is:
[0007] In response to the multi-display mode configuration instruction, the integrated graphics card is set as the primary card and the independent graphics card is set as the secondary card in the BIOS;
[0008] Configure and store the initial status of the integrated graphics card and the discrete graphics card;
[0009] During the initialization of the graphics card driver, the multi-display mode setting information transmitted by the BIOS is read.
[0010] Optionally, allocating tasks to the integrated graphics card and the independent graphics card according to the task type and the current system load includes:
[0011] The task allocation between the integrated graphics card and the discrete graphics card is dynamically adjusted according to the changes in the current system load. The process is as follows:
[0012] When the system load is lower than a first threshold, the independent graphics card assists the integrated graphics card in processing graphics rendering and display tasks;
[0013] When the system load is higher than a second threshold, the independent graphics card is used entirely for processing AI computing tasks;
[0014] The first threshold and the second threshold are both used to indicate the severity of the current workload of the system.
[0015] Optionally, the artificial intelligence computing device implementation method provided in the embodiment of the present application further includes:
[0016] Determine the connection status of the integrated graphics card and the independent graphics card with the display device, and transmit the processing result of the corresponding graphics card to the corresponding display device for output according to the determination result.
[0017] Optionally, when only the integrated graphics card is connected to a display device, the integrated graphics card transmits the results of the processed desktop 3D-related display rendering, APP UI-related display rendering, and video playback tasks to the display device for display; the independent graphics card transmits the results of the processed APP UI rendering and AI computing tasks to the integrated graphics card for caching, and the integrated graphics card transmits the cached results to the display device for display;
[0018] When only the independent graphics card is connected to the display device, the integrated graphics card will transmit the results of the desktop 3D-related display rendering and APP UI-related display rendering tasks to the independent graphics card for caching, and the independent graphics card will transmit the cached results to the display device for display; the independent graphics card will transmit the results of the APP UI rendering, AI calculation and video playback tasks to the display device for display;
[0019] When the integrated graphics card and the independent graphics card are respectively connected to a display device, the integrated graphics card will transmit the results of the processed desktop 3D related display rendering, APP UI related display rendering and video playback tasks to the corresponding connected display device for display, and the independent graphics card will transmit the results of the processed APP UI rendering and AI computing tasks to the corresponding connected display device for display.
[0020] Optionally, the implementation method of the artificial intelligence computing device provided in the embodiment of the present application also includes: receiving an instruction from an application to specify the use of an integrated graphics card or a discrete graphics card through an API interface provided by a graphics card driver.
[0021] Optionally, the method for implementing an artificial intelligence computing device provided in an embodiment of the present application further includes: receiving an instruction from a user to choose to use an integrated graphics card or an independent graphics card through a graphics setting interface provided by an operating system.
[0022] Optionally, the method for implementing the artificial intelligence computing device provided in the embodiment of the present application also includes: real-time monitoring of the usage of the integrated graphics card and the independent graphics card, and recording log information.
[0023] The present application also provides an artificial intelligence computing device implementation device, which includes:
[0024] an identification module configured to identify a primary card and a secondary card according to multi-display mode setting information, wherein the multi-display mode setting information sets the integrated graphics card as the primary card of the computing device and the independent graphics card as the secondary card of the computing device;
[0025] An allocation module is configured to allocate tasks to an integrated graphics card and an independent graphics card according to task types and current system load; wherein graphics rendering and display tasks are allocated to the integrated graphics card, and artificial intelligence computing tasks are allocated to the independent graphics card; the task types include graphics rendering and display types and artificial intelligence computing types; the current system load includes one or more of CPU usage, memory usage, GPU usage, disk I / O, network bandwidth, and graphics processing requirements.
[0026] An embodiment of the present application further provides an electronic device, including a processor and a memory, wherein an executable program is stored in the memory, and the processor executes the executable program to perform the steps of the method described above. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 One of the flowcharts of the artificial intelligence computing device implementation method of the present application embodiment;
[0028] Figure 2 This is the second flowchart of the method for implementing the artificial intelligence computing device of the embodiment of the present application;
[0029] Figure 3 This is a structural block diagram of the method for implementing an artificial intelligence computing device in an embodiment of the present application in which only an integrated graphics card is connected to a display device;
[0030] Figure 4 This is a structural block diagram of a method for implementing an artificial intelligence computing device in an embodiment of the present application in which only an independent graphics card is connected to a display device;
[0031] Figure 5 This is a structural block diagram of an integrated graphics card and an independent graphics card respectively connected to a display device in the implementation method of the artificial intelligence computing device of the embodiment of the present application;
[0032] Figure 6 A structural block diagram of an artificial intelligence computing device implementation apparatus of an embodiment of the present application;
[0033] Figure 7 A schematic diagram of the structure of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0034] Various aspects and features of the present application are described herein with reference to the accompanying drawings.
[0035] It should be understood that various modifications may be made to the embodiments of the present application. Therefore, the above description should not be considered as limiting, but only as an example of an embodiment. Other modifications within the scope and spirit of the present application will occur to those skilled in the art.
[0036] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the present application and, together with the general description of the present application given above and the detailed description of the embodiments given below, serve to explain the principles of the present application.
[0037] These and other characteristics of the present application will become apparent from the following description of a preferred form of embodiment given as a non-limiting example with reference to the accompanying drawings.
[0038] It should also be understood that although the present application has been described with reference to some specific examples, those skilled in the art will be able to readily implement many other equivalent forms of the present application.
[0039] The above and other aspects, features and advantages of the present application will become more apparent in view of the following detailed description when taken in conjunction with the accompanying drawings.
[0040] Specific embodiments of the present application are described hereinafter with reference to the accompanying drawings; however, it should be understood that the embodiments applied for are merely examples of the present application, which may be implemented in a variety of ways. Well-known and / or repeated functions and structures are not described in detail to avoid unnecessary or redundant details that obscure the present application. Therefore, the specific structural and functional details applied for herein are not intended to be limiting, but merely serve as a basis and representative basis for the claims to teach those skilled in the art to use the present application in a variety of ways with substantially any suitable detailed structure.
[0041] This specification may use the phrases "in one embodiment," "in another embodiment," "in yet another embodiment," or "in other embodiments," all of which may refer to one or more of the same or different embodiments according to the present application.
[0042] In a personal computer system equipped with an integrated graphics card (integrated graphics) and a discrete graphics card (discrete graphics), users usually only use the discrete graphics card as the main display output device, while the integrated graphics card is idle, which results in the ineffective use of the computing resources of the integrated graphics card, resulting in a waste of resources. In order to make full use of these potential computing capabilities, the present application provides an innovative method for implementing an artificial intelligence computing device. The core idea of this method is to redefine the roles and tasks for the integrated graphics card and the discrete graphics card: the integrated graphics card is used as the main card of the computing device, and is configured to mainly perform graphics rendering and display tasks; at the same time, the discrete graphics card is used as the secondary card of the computing device, and is configured to mainly perform AI computing tasks, and more than 90% of the GPU resources of the discrete graphics card are dedicated to accelerating the processing of AI applications. In this way, not only can the display jamming problem caused by AI computing tasks occupying discrete graphics resources be avoided, but also the AI computing efficiency can be greatly improved, and effective integration and optimal configuration of resources can be achieved, providing users with a smooth and efficient AI computing device.
[0043] In the embodiments of the present application, the computing device may be a computer, a smart phone, a tablet computer or other device, which can perform various computing tasks and process personal information.
[0044] The following is a detailed description of the implementation method of the artificial intelligence computing device of the present application with reference to the accompanying drawings. Figure 1 This is one of the flowcharts of the method for implementing the artificial intelligence computing device of the embodiment of the present application, such as Figure 1 As shown, the method comprises the following steps:
[0045] S100: Identify a primary card and a secondary card according to multi-display mode setting information, wherein the multi-display mode setting information sets the integrated graphics card as the primary card of the computing device and the independent graphics card as the secondary card of the computing device.
[0046] In modern computer systems, especially laptops, there are often two types of graphics processors: integrated graphics and discrete graphics. Integrated graphics are usually directly integrated into the CPU, with lower power consumption and cost; while discrete graphics are a separate component, usually providing stronger graphics processing performance, but also consuming more power.
[0047] In the embodiment of the present application, the multi-display mode means that the user can choose which graphics card to use to process graphics tasks according to their needs, which includes: integrated graphics mode, independent graphics mode and hybrid mode. Among them, in the integrated graphics mode, only the integrated graphics card is used. In the independent graphics mode, only the independent graphics card is used. In the hybrid mode, the system automatically decides when to use the integrated graphics card and when to use the independent graphics card. Generally, light-load tasks are undertaken by the integrated graphics card to save power, and heavy-load tasks are handled by the independent graphics card to ensure performance.
[0048] By default, the system gives priority to the integrated graphics card for graphics output and processing. Only when the application explicitly requires higher performance, the system activates the independent graphics card to participate in the processing task. Since computing devices rely on relatively low-power integrated graphics cards most of the time, this setting of the main card and the secondary card can help extend the battery life.
[0049] In an embodiment of the present application, the multi-display mode setting information includes a primary and secondary card identifier, which is used to distinguish between an integrated graphics card and an independent graphics card. The integrated graphics card is used as the primary card, and the integrated graphics card is used by default to handle conventional graphics tasks when the system starts. The independent graphics card is used as a secondary card and plays a role in applications, games, or AI calculations that require higher graphics processing capabilities. The system can assign specific tasks to the independent graphics card for execution based on the needs of the application or the user's settings.
[0050] The specific form of the primary and secondary card identification can be implemented by combining hardware and software. Specifically, it can be completed through BIOS settings, operating system configuration, graphics card driver and application specific settings. For example, the working mode of the integrated graphics card and the independent graphics card can be set through the graphics card options in BIOS (Basic Input Output System) or UEFI (Unified Extensible Firmware Interface).
[0051] In a specific embodiment, the multi-display mode setting information may be obtained from the BIOS, and the specific process is as follows:
[0052] In response to the multi-display mode configuration instruction, the integrated graphics card is set as the primary card and the independent graphics card is set as the secondary card in the BIOS.
[0053] During the application process, users can configure the multi-display mode through the relevant graphics setting options in the BIOS / UEFI setting interface. Users can choose to use the integrated graphics card as the primary card and the independent graphics card as the secondary card. The BIOS records the multi-display mode configuration instructions and takes effect when the system starts.
[0054] Configure the initial status of the integrated graphics card and the discrete graphics card and store them.
[0055] Specifically, the BIOS sets the initial status of the integrated graphics card and the discrete graphics card according to the user's selection. The integrated graphics card can be configured as the default graphics output device, and the discrete graphics card can be set as an auxiliary device. The BIOS saves these settings in non-volatile memory so that these settings can be loaded each time the system starts.
[0056] During the initialization of the graphics card driver, the multi-display mode setting information transmitted by the BIOS is read.
[0057] Specifically, when the operating system starts and loads the graphics card driver, the graphics card driver queries the BIOS to obtain multi-display mode setting information, and configures display output, performance mode and other related parameters according to the multi-display mode setting information.
[0058] S200. Allocate tasks to the integrated graphics card and the independent graphics card according to the task type and the current system load; wherein the graphics rendering and display tasks are allocated to the integrated graphics card, and the AI computing tasks are allocated to the independent graphics card; the task types include graphics rendering and display types and artificial intelligence computing types; the current system load includes one or more of CPU usage, memory usage, GPU usage, disk I / O, network bandwidth and graphics processing requirements.
[0059] Specifically, task types refer to the different processing capabilities and resources required by computing devices when performing different types of work. Different types of tasks can be graphics rendering and display tasks, AI computing tasks, and other tasks. Among them, graphics rendering and display tasks include desktop rendering, video playback, web browsing, and lightweight games, etc. These tasks do not require high graphics performance but require continuous display output. AI computing tasks include training and reasoning of deep learning models, scientific computing, 3D rendering, and high-performance games, etc. These tasks have high requirements on the computing power of graphics cards. Other tasks include video encoding, image editing, and physical simulation.
[0060] The current system load refers to all the tasks and activities that the computing device is performing at a certain moment. System load can be measured by indicators such as CPU utilization, memory utilization, GPU utilization, disk I / O, network bandwidth, and graphics processing requirements. For example, if the CPU utilization is high, AI computing tasks are assigned to the discrete graphics card first to reduce the burden on the CPU. If the memory utilization is high, optimize memory management to ensure that graphics rendering and display tasks as well as AI computing tasks can proceed smoothly. If the GPU utilization of the integrated graphics card is high, temporarily transfer some lightweight tasks to the discrete graphics card to balance the load.
[0061] like Figure 2 As shown, in a specific embodiment, in the above step S100, identifying the main card and the secondary card according to the multi-display mode setting information includes dynamically adjusting task allocation, wherein the task allocation of the integrated graphics card and the independent graphics card is dynamically adjusted according to changes in the current system load.
[0062] In the embodiment of the present application, the current workload of the system is continuously monitored, and the workload includes CPU usage, memory usage, and graphics processing requirements, etc.; and the current processing task is determined to be a light-load task or a heavy-load task based on the monitoring data. For light-load tasks such as web browsing and word processing, they are assigned to the integrated graphics card; for heavy-load tasks such as high-definition video playback, 3D games, and professional graphics processing, they are assigned to the independent graphics card to utilize its higher graphics processing performance.
[0063] Continuous monitoring of the current workload of the system can be achieved through a performance monitoring tool of the operating system, wherein the performance monitoring tool of the operating system can be a performance monitor or system-related commands.
[0064] In the process of dynamically adjusting task allocation, in order to achieve seamless switching between integrated graphics and discrete graphics, the relevant register configuration set in the corresponding integrated graphics and discrete graphics drivers in the OS can be used to achieve free switching between integrated graphics and discrete graphics. It enables the system to select the most appropriate graphics card without user intervention through the combination of hardware and drivers.
[0065] Dynamically adjust the graphics card's task allocation based on the current load conditions, allowing the computing device to achieve a balance between performance and energy efficiency.
[0066] In a specific embodiment, the process of dynamically adjusting task allocation is as follows:
[0067] When the system load is lower than the first threshold, it means that the current processing task is light and does not require the full performance of the independent graphics card. The independent graphics card assists the integrated graphics card in processing graphics rendering and display tasks. In this case, the integrated graphics card, as the main graphics processing unit, is responsible for processing most graphics rendering and display tasks. The independent graphics card can assist the integrated graphics card, for example, sharing part of the graphics rendering tasks, or providing additional computing power in certain specific situations.
[0068] When the system load is higher than the second threshold, it means that there are a lot of computationally intensive tasks, especially AI computing tasks. In this case, the discrete graphics card is no longer involved in graphics rendering tasks, but is completely used to process AI computing tasks. The integrated graphics card continues to process graphics rendering and display tasks, while the discrete graphics card focuses on high-performance computing tasks.
[0069] The first threshold and the second threshold are both used to indicate the severity of the current workload of the system.
[0070] The first threshold and the second threshold can be set according to the specific application scenario and hardware performance. For example, the first threshold can be set to a system CPU usage rate lower than 50%, and the second threshold can be set to a system CPU usage rate higher than 80% and a GPU usage rate higher than 50%. The specific values of the first threshold and the second threshold can be optimized through experiments and tests to ensure that the best performance can be obtained under different load conditions.
[0071] like Figure 2 As shown, in other embodiments, the artificial intelligence computing device implementation method provided by the present application also includes:
[0072] S300: Determine the connection status of the integrated graphics card and the independent graphics card with the display device, and transmit the processing result of the corresponding graphics card to the corresponding display device for output according to the determination result.
[0073] like Figure 3 As shown, when only the integrated graphics card is connected to the display device, the integrated graphics card will transmit the results of tasks such as desktop 3D related display rendering, APP UI related display rendering and video playback to the display device for display; the independent graphics card will transmit the results of tasks such as AI APP UI rendering and AI calculation through the PCIe (Peripheral Component Interconnect Express) bus to the integrated graphics card for caching, and the integrated graphics card will transmit the cached results to the display device for display.
[0074] Among them, APP UI rendering refers to the UI drawing and synthesis process at the application level, including layout calculation, drawing, synthesis, etc. APP UI related display rendering refers to the hardware acceleration, buffering, synchronization mechanism, etc. in the display process, ensuring that the final rendering result can be displayed smoothly and efficiently on the display device.
[0075] like Figure 4 As shown, when only the independent graphics card is connected to the display device, the integrated graphics card will transmit the results of tasks such as desktop 3D related display rendering and APP UI related display rendering to the independent graphics card for caching, and the independent graphics card will transmit the cached results to the display device for display; the independent graphics card will transmit the results of tasks such as APP UI rendering, AI calculation and video playback to the display device for display.
[0076] like Figure 5As shown, when the integrated graphics card and the independent graphics card are respectively connected to a display device, the integrated graphics card transmits the results of tasks such as desktop 3D related display rendering, APP UI related display rendering and video playback to the corresponding connected display device for display, and the independent graphics card transmits the results of tasks such as APP UI rendering and AI calculation to the corresponding connected display device for display. In this multi-graphics card configuration, the integrated graphics card is usually directly embedded in the CPU, using part of the system memory as video memory, and the integrated graphics card exchanges data with the CPU through internal high-speed interconnection; the independent graphics card exchanges data with the system memory and CPU through the PCIe bus.
[0077] In other embodiments, the artificial intelligence computing device implementation method provided in the present application also includes receiving instructions from an application program to specify the use of an integrated graphics card or a discrete graphics card through an API interface provided by a graphics card driver.
[0078] Specifically, applications can send instructions through the API interface provided by the graphics card driver to explicitly specify which graphics card to use to handle specific tasks. This allows applications to select the most appropriate graphics card based on the type of task. In addition, through the API interface, applications can dynamically adjust the use of graphics cards to find the best balance between performance and power consumption. For example, use the integrated graphics card when performing lightweight tasks, and use the discrete graphics card when performing graphics-intensive tasks.
[0079] In other embodiments, the artificial intelligence computing device implementation method provided in the present application also includes receiving an instruction from a user to choose to use an integrated graphics card or a discrete graphics card through a graphics setting interface provided by the operating system.
[0080] Specifically, the graphical settings interface provided by the operating system provides an intuitive interface for users to select which graphics card to use. Users do not need to deeply understand the underlying technical details of the operating system, and can complete the settings by simply clicking or selecting. Users can specify which graphics card to use for a specific application. In addition to settings for specific applications, users can also perform system-level graphics card configuration and set default graphics card usage policies. The graphical settings interface provided by the operating system relies on the support of the graphics card driver. The graphics card driver enables the operating system to read and write the configuration information of the graphics card by providing the necessary API interfaces. In the operating system, the configuration information of the graphics card is usually stored in the registry or a specific configuration file. When the user makes changes through the graphical settings interface, this information will be updated.
[0081] Through the graphical settings interface provided by the operating system, users can intuitively choose to use the integrated graphics card or the independent graphics card to perform specific tasks. This approach can improve user convenience and system flexibility.
[0082] In other embodiments, the artificial intelligence computing device implementation method provided in the present application also includes real-time monitoring of the usage of the integrated graphics card and the independent graphics card, and recording log information.
[0083] Real-time monitoring of the usage of integrated graphics and discrete graphics can help users and administrators understand the actual usage of graphics cards, identify potential problems, and provide data support for future optimization. Recording log information is the key to ensuring system performance optimization and troubleshooting.
[0084] Specifically, you can monitor the GPU utilization, memory usage, frequency, and temperature of integrated graphics and discrete graphics cards; track which tasks are currently using which graphics card, and the resource usage of these tasks; monitor the power consumption of the graphics card; and record errors or abnormalities that occur during the operation of the graphics card. Log information can be recorded and stored in a structured format in the local file system, or sent to a remote server over the network for centralized management. In addition, logs can be divided into different levels such as debug, warning, and error to distinguish different types of information.
[0085] The following is a detailed description of the implementation method of the artificial intelligence computing device provided in the embodiment of the present application through a specific embodiment.
[0086] When only the integrated graphics card is connected to the display device, the dual-domain multi-display mode that can be output by both the integrated graphics card and the independent graphics card is set in the BIOS, and the multi-display mode setting information is transmitted to the operating system and the graphics card driver, wherein the integrated graphics card is set as the primary card and the independent graphics card is set as the secondary card in the multi-display mode setting information. The dual-domain multi-display mode refers to the two display domains forming multiple display modes.
[0087] When the operating system kernel starts, it reads the multi-display mode setting information passed by the BIOS, and the kernel recognizes that there are integrated graphics and discrete graphics cards in the system. The kernel loads the corresponding graphics driver, which is responsible for communicating with the integrated graphics and discrete graphics cards and providing the operating system with an abstract interface for using the graphics card functions.
[0088] During the loading process of the graphics card driver, the kernel obtains the status of each graphics card through the graphics card driver, including the integrated graphics card being set as the main card and the independent graphics card being set as the secondary card. After the AI APP is started, it detects the connection status of the display device and prompts the user according to the connection status of the display device. After obtaining the user's setting information, it sends the independent graphics card screen-off instruction and task type instruction to the graphics card driver through the API interface. The graphics card driver performs screen-off or display switching operations on the independent graphics card according to the independent graphics card screen-off instruction, and assigns tasks to the main card and the secondary card according to the task type and the current system load. Specifically, the integrated graphics card is assigned to perform graphics rendering and display tasks, such as desktop 3D related display rendering, APPUI related display rendering and video playback tasks; the independent graphics card is assigned to perform APP UI rendering and AI calculation tasks. The independent graphics card transmits the processing results to the integrated graphics card through the PCIe bus for caching, and the integrated graphics card transmits the processing results and cached results to the display device for display.
[0089] When only the independent graphics card is connected to the display device, a multi-display mode that can be output by both the integrated graphics card and the independent graphics card is set in the BIOS, and the multi-display mode setting information is passed to the operating system and the graphics card driver. The multi-display mode setting information sets the integrated graphics card as the main card and the independent graphics card as the secondary card.
[0090] When the operating system kernel starts, it reads the multi-display mode setting information passed by the BIOS, and the kernel recognizes that there are integrated graphics and discrete graphics cards in the system. The kernel loads the corresponding graphics driver, which is responsible for communicating with the integrated graphics and discrete graphics cards and providing the operating system with an abstract interface for using the graphics card functions.
[0091] During the loading process of the graphics card driver, the kernel obtains the status of each graphics card through the graphics card driver, including the integrated graphics card being set as the main card and the independent graphics card being set as the secondary card. After the AI APP is started, it sends a task type instruction to the graphics card driver through the API interface, and the graphics card driver assigns tasks to the main card and the secondary card according to the task type and the current system load. Specifically, the integrated graphics card is assigned to perform graphics rendering and display tasks, such as desktop 3D related display rendering and APP UI related display rendering tasks; the independent graphics card is assigned to perform APP UI rendering, AI calculations, and video playback tasks. The integrated graphics card transmits the processing results to the independent graphics card through the PCIe bus for caching, and the independent graphics card transmits the processing results and cached results to the display device for display.
[0092] When the integrated graphics card and the independent graphics card are respectively connected to a display device, a multi-display mode that can be output by both the integrated graphics card and the independent graphics card is set in the BIOS, and the multi-display mode setting information is passed to the operating system and the graphics card driver. Among them, the multi-display mode setting information sets the integrated graphics card as the main card and the independent graphics card as the secondary card.
[0093] When the operating system kernel starts, it reads the multi-display mode setting information passed by the BIOS, and the kernel recognizes that there are integrated graphics and discrete graphics cards in the system. The kernel loads the corresponding graphics driver, which is responsible for communicating with the integrated graphics and discrete graphics cards and providing the operating system with an abstract interface for using the graphics card functions.
[0094] During the loading process of the graphics card driver, the kernel obtains the status of each graphics card through the graphics card driver, including the integrated graphics card being set as the main card and the independent graphics card being set as the secondary card. After the AI APP is started, it sends a task type instruction to the graphics card driver through the API interface. The graphics card driver assigns tasks to the main card and the secondary card according to the task type and the current system load. Specifically, the integrated graphics card is assigned to perform graphics rendering and display tasks, such as desktop 3D related display rendering, APP UI related display rendering, and video playback tasks; the independent graphics card is assigned to perform APP UI rendering and AI calculation tasks. The integrated graphics card and the independent graphics card transmit the processing results to the corresponding display device for display.
[0095] The implementation method of the artificial intelligence computing device provided by the present application can upgrade ordinary computing devices to artificial intelligence computing devices and significantly reduce the cost of computing devices with AI functions by combining integrated graphics cards and independent graphics cards instead of introducing additional high-end hardware (such as NPU or more expensive GPU). This makes AI technology more economical and is conducive to popularization among a wider range of consumer groups. The implementation method of the artificial intelligence computing device provided by the present application no longer requires a complex motherboard layout designed specifically for AI computing, which can reduce the need for special hardware interfaces and power management, thereby reducing the design complexity and manufacturing cost of the motherboard.
[0096] The method for implementing an artificial intelligence computing device provided in this application assigns graphics rendering and display tasks to the integrated graphics card, while assigning AI computing tasks to the independent graphics card, ensuring that the two do not interfere with each other. This allows smooth graphics performance to be maintained while executing AI tasks, avoiding user interface freezes caused by AI tasks occupying a large amount of resources.
[0097] The artificial intelligence computing device implementation method provided by this application dynamically allocates tasks according to task type and system load, which can maximize the advantages of each graphics card, improve the utilization of system resources, and reduce power consumption. The artificial intelligence computing device implementation method provided by this application allows users to seamlessly use AI functions such as image recognition, voice assistant, etc. while enjoying high-quality graphics display without experiencing obvious delays or performance degradation, thereby improving user satisfaction and acceptance of AI technology.
[0098] Based on the same inventive concept, Figure 6 As shown, the embodiment of the present application also provides an artificial intelligence computing device implementation device, which includes:
[0099] The identification module is configured to identify the main card and the secondary card according to the multi-display mode setting information, wherein the multi-display mode setting information sets the integrated graphics card as the main card of the computing device and the independent graphics card as the secondary card of the computing device.
[0100] In the embodiment of the present application, the multi-display mode means that the user can choose which graphics card to use to process graphics tasks according to their needs, which includes: integrated graphics mode, independent graphics mode and hybrid mode. Among them, in the integrated graphics mode, only the integrated graphics card is used. In the independent graphics mode, only the independent graphics card is used. In the hybrid mode, the system automatically decides when to use the integrated graphics card and when to use the independent graphics card. Generally, light-load tasks are undertaken by the integrated graphics card to save power, and heavy-load tasks are handled by the independent graphics card to ensure performance.
[0101] By default, the system gives priority to the integrated graphics card for graphics output and processing. Only when the application explicitly requires higher performance, the system activates the independent graphics card to participate in the processing task. Since computing devices rely on relatively low-power integrated graphics cards most of the time, this setting of the main card and the secondary card can help extend the battery life.
[0102] In an embodiment of the present application, the multi-display mode setting information includes a primary and secondary card identifier, which is used to distinguish between an integrated graphics card and an independent graphics card. The integrated graphics card is used as the primary card, and the integrated graphics card is used by default to handle conventional graphics tasks when the system starts. The independent graphics card is used as a secondary card and plays a role in applications, games, or AI calculations that require higher graphics processing capabilities. The system can assign specific tasks to the independent graphics card for execution based on the needs of the application or the user's settings.
[0103] The specific form of the primary and secondary card identification can be implemented by combining hardware and software. Specifically, it can be completed through BIOS settings, operating system configuration, graphics card driver and application specific settings. For example, the working mode of the integrated graphics card and the independent graphics card can be set through the graphics card options in BIOS (Basic Input Output System) or UEFI (Unified Extensible Firmware Interface).
[0104] In a specific embodiment, the multi-display mode setting information can be obtained from the BIOS, and the specific process is as follows:
[0105] In response to the multi-display mode configuration instruction, the integrated graphics card is set as the primary card and the independent graphics card is set as the secondary card in the BIOS.
[0106] During the application process, users can configure the multi-display mode through the relevant graphics setting options in the BIOS / UEFI setting interface. Users can choose to use the integrated graphics card as the primary card and the independent graphics card as the secondary card. The BIOS records the multi-display mode configuration instructions and takes effect when the system starts.
[0107] Configure and store the initial status of the integrated graphics card and discrete graphics card.
[0108] Specifically, the BIOS sets the initial status of the integrated graphics card and the discrete graphics card according to the user's selection. The integrated graphics card can be configured as the default graphics output device, and the discrete graphics card can be set as an auxiliary device. The BIOS saves these settings in non-volatile memory so that these settings can be loaded each time the system starts.
[0109] During the initialization of the graphics card driver, the multi-display mode setting information transmitted by the BIOS is read.
[0110] Specifically, when the operating system starts and loads the graphics card driver, the graphics card driver queries the BIOS to obtain multi-display mode setting information, and configures display output, performance mode and other related parameters according to the multi-display mode setting information.
[0111] An allocation module is configured to allocate tasks to the integrated graphics card and the independent graphics card according to the task type and the current system load; wherein the graphics rendering and display tasks are allocated to the integrated graphics card, and the AI computing tasks are allocated to the independent graphics card, and the task types include graphics rendering and display types and artificial intelligence computing types; the current system load includes one or more of CPU utilization, memory utilization, GPU utilization, disk I / O, network bandwidth and graphics processing requirements.
[0112] In the embodiments of the present application, the task type refers to the different processing capabilities and resources required by the computing device when performing different types of work. Different types of tasks can be graphics rendering and display tasks, AI computing tasks, and other tasks. Among them, graphics rendering and display tasks include desktop rendering, video playback, web browsing, and lightweight games, etc. These tasks do not require high graphics performance, but require continuous display output. AI computing tasks include training and reasoning of deep learning models, scientific computing, 3D rendering, and high-performance games, etc. These tasks have high requirements on the computing power of graphics cards. Other tasks include video encoding, image editing, and physical simulation.
[0113] The current system load refers to all the tasks and activities that the computing device is performing at a certain moment. System load can be measured by indicators such as CPU utilization, memory utilization, GPU utilization, disk I / O, network bandwidth, and graphics processing requirements. For example, if the CPU utilization is high, AI computing tasks are assigned to the discrete graphics card first to reduce the burden on the CPU. If the memory utilization is high, optimize memory management to ensure that graphics rendering and display tasks as well as AI computing tasks can proceed smoothly. If the GPU utilization of the integrated graphics card is high, temporarily transfer some lightweight tasks to the discrete graphics card to balance the load.
[0114] In a specific embodiment, the allocation module includes:
[0115] The dynamic adjustment module is configured to dynamically adjust the task allocation of the integrated graphics card and the independent graphics card according to the change of the current system load.
[0116] In the embodiment of the present application, the current workload of the system is continuously monitored, and the workload includes CPU usage, memory usage, and graphics processing requirements, etc.; and the current processing task is determined to be a light-load task or a heavy-load task based on the monitoring data. For light-load tasks such as web browsing and word processing, they are assigned to the integrated graphics card; for heavy-load tasks such as high-definition video playback, 3D games, and professional graphics processing, they are assigned to the independent graphics card to utilize its higher graphics processing performance.
[0117] Continuous monitoring of the current workload of the system can be achieved through a performance monitoring tool of the operating system, wherein the performance monitoring tool of the operating system can be a performance monitor or system-related commands.
[0118] In the process of dynamically adjusting task allocation, in order to achieve seamless switching between integrated graphics and discrete graphics, the relevant register configuration set in the corresponding integrated graphics and discrete graphics drivers in the OS can be used to achieve free switching between integrated graphics and discrete graphics. It enables the system to select the most appropriate graphics card without user intervention through the combination of hardware and drivers.
[0119] Dynamically adjust the graphics card's task allocation based on the current load conditions, allowing the computing device to achieve a balance between performance and energy efficiency.
[0120] In a specific embodiment, the dynamic adjustment module is further configured to:
[0121] When the system load is lower than the first threshold, it means that the current processing task is light and does not require the full performance of the independent graphics card. The independent graphics card assists the integrated graphics card in processing graphics rendering and display tasks. In this case, the integrated graphics card, as the main graphics processing unit, is responsible for processing most graphics rendering and display tasks. The independent graphics card can assist the integrated graphics card, for example, sharing part of the graphics rendering tasks, or providing additional computing power in certain specific situations.
[0122] When the system load is higher than the second threshold, it means that there are a lot of computationally intensive tasks, especially AI computing tasks. In this case, the discrete graphics card is no longer involved in graphics rendering tasks, but is completely used to process AI computing tasks. The integrated graphics card continues to process graphics rendering and display tasks, while the discrete graphics card focuses on high-performance computing tasks.
[0123] The first threshold and the second threshold are both used to indicate the severity of the current workload of the system.
[0124] The first threshold and the second threshold can be set according to the specific application scenario and hardware performance. For example, the first threshold can be set to a system CPU usage rate lower than 50%, and the second threshold can be set to a system CPU usage rate higher than 80% and a GPU usage rate higher than 50%. The specific values of the first threshold and the second threshold can be optimized through experiments and tests to ensure that the best performance can be obtained under different load conditions.
[0125] In other embodiments, the artificial intelligence computing device implementation apparatus provided by the present application further includes:
[0126] The judgment module is configured to judge the connection status of the integrated graphics card and the independent graphics card with the display device, and transmit the processing result of the corresponding graphics card to the corresponding display device for output according to the judgment result.
[0127] In an embodiment of the present application, when only the integrated graphics card is connected to the display device, the integrated graphics card will transmit the results of processed tasks such as desktop 3D related display rendering, APP UI related display rendering and video playback to the display device for display; the independent graphics card will transmit the results of processed tasks such as APP UI rendering and AI calculation to the integrated graphics card through the PCIe bus for caching, and the integrated graphics card will transmit the cached results to the display device for display.
[0128] Among them, APP UI rendering refers to the UI drawing and synthesis process at the application level, including layout calculation, drawing, synthesis, etc. APP UI related display rendering refers to the hardware acceleration, buffering, synchronization mechanism, etc. in the display process, ensuring that the final rendering result can be displayed smoothly and efficiently on the display device.
[0129] When only the independent graphics card is connected to the display device, the integrated graphics card will transfer the results of tasks such as desktop 3D-related display rendering and APP UI-related display rendering to the independent graphics card for caching, and the independent graphics card will transmit the cached results to the display device for display; the independent graphics card will transmit the results of tasks such as APP UI rendering, AI calculation and video playback to the display device for display.
[0130] When the integrated graphics card and the independent graphics card are connected to a corresponding display device respectively, the integrated graphics card will transmit the results of tasks such as desktop 3D related display rendering, APP UI related display rendering and video playback to the corresponding connected display device for display, and the independent graphics card will transmit the results of tasks such as APP UI rendering and AI calculation to the corresponding connected display device for display. In this multi-graphics card configuration, the integrated graphics card is usually directly embedded in the CPU, using part of the system memory as video memory, and the integrated graphics card exchanges data with the CPU through internal high-speed interconnection; the independent graphics card exchanges data with the system memory and CPU through the PCIe bus.
[0131] Based on the same inventive concept, the present application embodiment also provides an electronic device, such as Figure 7 As shown, it includes a processor and a memory, wherein an executable program is stored in the memory, and the processor executes the executable program to perform the steps of the method as described above.
[0132] The above embodiments are only exemplary embodiments of the present application and are not intended to limit the present application. The protection scope of the present application is defined by the claims. Those skilled in the art may make various modifications or equivalent substitutions to the present application within the essence and protection scope of the present application, and such modifications or equivalent substitutions shall also be deemed to fall within the protection scope of the present application.
Claims
1. A method for implementing an artificial intelligence computing device, wherein the computing device is configured with an integrated graphics card and an independent graphics card, comprising: Identify the primary card and the secondary card according to the multi-display mode setting information, wherein the multi-display mode setting information sets the integrated graphics card as the primary card of the computing device and the independent graphics card as the secondary card of the computing device; Assign tasks to the integrated graphics card and the independent graphics card according to the task type and the current system load; wherein the graphics rendering and display tasks are assigned to the integrated graphics card, and the artificial intelligence computing tasks are assigned to the independent graphics card; the task types include graphics rendering and display types and artificial intelligence computing types; the current system load includes one or more of CPU usage, memory usage, GPU usage, disk I / O, network bandwidth and graphics processing requirements.
2. According to the method of claim 1, the identifying the primary card and the secondary card according to the multi-display mode setting information comprises obtaining the multi-display mode setting information from the BIOS, and the obtaining process is: In response to the multi-display mode configuration instruction, the integrated graphics card is set as the primary card and the independent graphics card is set as the secondary card in the BIOS; Configure and store the initial status of the integrated graphics card and the discrete graphics card; During the initialization of the graphics card driver, the multi-display mode setting information transmitted by the BIOS is read.
3. The method according to claim 1, wherein allocating tasks to the integrated graphics card and the independent graphics card according to the task type and the current system load comprises dynamically adjusting the task allocation of the integrated graphics card and the independent graphics card according to the change of the current system load, wherein the process is as follows: When the system load is lower than a first threshold, the independent graphics card assists the integrated graphics card in processing graphics rendering and display tasks; When the system load is higher than a second threshold, the independent graphics card is fully used to process artificial intelligence computing tasks; The first threshold and the second threshold are both used to indicate the severity of the current workload of the system.
4. The method according to claim 1, further comprising: Determine the connection status of the integrated graphics card and the independent graphics card with the display device, and transmit the processing result of the corresponding graphics card to the corresponding display device for output according to the determination result.
5. According to the method of claim 4, when only the integrated graphics card is connected to the display device, the integrated graphics card transmits the results of the processed desktop 3D related display rendering, application user interface related display rendering and video playback tasks to the display device for display; the independent graphics card transmits the results of the processed application user interface rendering and artificial intelligence computing tasks to the integrated graphics card for caching, and the integrated graphics card transmits the cached results to the display device for display; When only the independent graphics card is connected to the display device, the integrated graphics card will transmit the results of the desktop 3D-related display rendering and application user interface-related display rendering tasks to the independent graphics card for caching, and the independent graphics card will transmit the cached results to the display device for display; the independent graphics card will transmit the results of the application user interface rendering, artificial intelligence calculation and video playback tasks to the display device for display; When the integrated graphics card and the independent graphics card are respectively connected to a display device, the integrated graphics card will transmit the results of the processed desktop 3D related display rendering, application user interface related display rendering and video playback tasks to the corresponding connected display device for display, and the independent graphics card will transmit the results of the processed application user interface rendering and artificial intelligence computing tasks to the corresponding connected display device for display.
6. The method according to claim 1, further comprising receiving an instruction from an application program to specify the use of an integrated graphics card or a discrete graphics card through an API interface provided by a graphics card driver. 7 . The method according to claim 1 , further comprising receiving an instruction from a user to select to use an integrated graphics card or an independent graphics card through a graphics setting interface provided by an operating system.
8. The method according to claim 1, further comprising monitoring the usage of the integrated graphics card and the independent graphics card in real time, and recording log information.
9. An artificial intelligence computing device implementation apparatus, comprising: an identification module configured to identify a primary card and a secondary card according to multi-display mode setting information, wherein the multi-display mode setting information sets the integrated graphics card as the primary card of the computing device and the independent graphics card as the secondary card of the computing device; An allocation module is configured to allocate tasks to an integrated graphics card and an independent graphics card according to task types and current system load; wherein graphics rendering and display tasks are allocated to the integrated graphics card, and artificial intelligence computing tasks are allocated to the independent graphics card; the task types include graphics rendering and display types and artificial intelligence computing types; the current system load includes one or more of CPU usage, memory usage, GPU usage, disk I / O, network bandwidth, and graphics processing requirements.
10. An electronic device, comprising a processor and a memory, wherein an executable program is stored in the memory, and the processor executes the executable program to perform the steps of the method according to any one of claims 1 to 8.