WO2023151287A1 - Arm服务器中pci设备的启动控制方法、装置及设备 - Google Patents

Arm服务器中pci设备的启动控制方法、装置及设备 Download PDF

Info

Publication number
WO2023151287A1
WO2023151287A1 PCT/CN2022/122738 CN2022122738W WO2023151287A1 WO 2023151287 A1 WO2023151287 A1 WO 2023151287A1 CN 2022122738 W CN2022122738 W CN 2022122738W WO 2023151287 A1 WO2023151287 A1 WO 2023151287A1
Authority
WO
WIPO (PCT)
Prior art keywords
pci
pci device
segment number
link bridge
bridge bus
Prior art date
Application number
PCT/CN2022/122738
Other languages
English (en)
French (fr)
Inventor
孙秀强
黄家明
史沛玉
王孝宝
Original Assignee
苏州浪潮智能科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 苏州浪潮智能科技有限公司 filed Critical 苏州浪潮智能科技有限公司
Publication of WO2023151287A1 publication Critical patent/WO2023151287A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Definitions

  • the present application relates to the field of servers, in particular to a method, device, device and non-volatile computer-readable storage medium for starting and controlling PCI devices in an ARM server.
  • the Advanced RISC Machine (ARM) server has adopted the 5nm process technology and its slogan of low power consumption and high performance has attracted more and more users.
  • ARM Advanced RISC Machine
  • Customers are increasingly accepting that the application of ARM servers has become more mature and has broken the monopoly of traditional servers and entered the data center of Internet customers.
  • Benefiting from the improvement of the process the number of ARM server cores has increased to 80 cores.
  • ARM relies on a single The number of cores of the processor has surpassed other chip manufacturers, and the performance has also been improved qualitatively compared with other manufacturers, especially in the fields of public cloud, cloud games, cloud mobile phones, video, artificial intelligence (hereinafter referred to as AI) and so on.
  • AI artificial intelligence
  • the ARM server has a limited number of application deployments, and various problems will be encountered during the deployment of applications by various Internet customers.
  • the NVIDIA TESLA T4 graphics card (hereinafter referred to as T4 graphics card) of NVIDIA
  • T4 graphics card the NVIDIA TESLA T4 graphics card
  • the virtualization container cannot support it, but servers of other architectures do not encounter this problem.
  • PCI peripheral component interconnect standard
  • the purpose of this application is to provide a start-up control method, device, device and non-volatile computer-readable storage medium for a PCI device in an ARM server, which are used to solve the problem that the business cannot be supported when the PCI device is adapted under the server of the ARM architecture. question.
  • the application provides a method for controlling the startup of PCI equipment in an ARM server, including:
  • segment number corresponding to each PCI device and the serial number of the PCI link bridge bus corresponding to each PCI device configure the segment number corresponding to the serial number of each PCI link bridge bus in the advanced configuration and power management interface protocol, so that according to the configured segment number Allocate system resources for PCI devices.
  • segment number corresponding to each PCI device and the serial number of the PCI link bridge bus corresponding to each PCI device configure the segment number corresponding to the serial number of each PCI link bridge bus in the advanced configuration and power management interface protocol, specifically including:
  • segment number and PCI link bridge bus serial number corresponding to the same PCI device are consistent with the initial corresponding relationship between each segment number and each PCI link bridge bus serial number pre-established in the advanced configuration and power management interface protocol, then keep the advanced configuration The segment number in the power management interface protocol remains unchanged;
  • segment number and PCI link bridge bus number corresponding to the same PCI device do not match the initial correspondence, then update the advanced configuration and power management interface protocol according to the segment number corresponding to the PCI device and the PCI link bridge bus number corresponding to the PCI device The segment number corresponding to the serial number of the PCI link bridge bus is consistent.
  • the output PCI device shows that the consistency check has passed tips.
  • segment number corresponding to the PCI device and the serial number of the PCI link bridge bus corresponding to the PCI device are not consistent with the corresponding relationship, return the configuration advanced configuration and The segment number corresponding to each PCI link bridge bus serial number in the power management interface protocol is used to allocate system resources for the PCI device according to the configured segment number, or trigger a system restart.
  • the prompt indicating that the PCI device has passed the consistency check it also includes:
  • a virtualized container is created based on a PCI device driver corresponding to a virtualized container creation command.
  • the PCI device is specifically a T4 graphics card
  • the PCI device driver is specifically a T4 graphics card driver.
  • the present application also provides a start-up control device for PCI equipment in an ARM server, including:
  • the configuration unit is configured to configure the segment number corresponding to each PCI link bridge bus sequence number in the advanced configuration and power management interface protocol according to the corresponding segment number of each PCI device and the corresponding PCI link bridge bus sequence number of each PCI device, to according to The configured segment number allocates system resources for PCI devices.
  • the application also provides a startup control device for PCI devices in an ARM server, including:
  • a memory configured to store a computer program
  • the processor is configured to execute a computer program, and when the computer program is executed by the processor, the steps of any one of the above-mentioned methods for controlling the startup of the PCI device in the ARM server are realized.
  • the present application also provides a non-volatile computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the startup control of the PCI device in any one of the above-mentioned ARM servers is realized. method steps.
  • the start-up control method of the PCI device in the ARM server is to check the corresponding segment number of the PCI device and the corresponding PCI link of the PCI device in the PCI device driver of the PCI device connected to the ARM server when starting up.
  • Bridge bus number configures the segment number corresponding to each PCI link bridge bus number in the advanced configuration and power management interface protocol, so as to configure The last segment number allocates system resources for PCI devices, ensuring that the order in which PCI devices are viewed in the PCI device driver is consistent with the enumeration order of PCI devices in the startup process, thereby meeting the needs of the PCI device driver for implementing business functions.
  • the present application also provides a start-up control device, device, and non-volatile computer-readable storage medium for PCI devices in an ARM server, which have the above-mentioned beneficial effects and will not be repeated here.
  • Fig. 1 is the flow chart of the startup control method of PCI device in a kind of ARM server that the embodiment of the present application provides;
  • FIG. 2 is a schematic structural diagram of a device for starting a PCI device in an ARM server provided in an embodiment of the present application;
  • FIG. 3 is a schematic structural diagram of a startup control device of a PCI device in an ARM server provided by an embodiment of the present application.
  • the core of the present application is to provide a start-up control method, device, device and non-volatile computer-readable storage medium for a PCI device in an ARM server, which are used to solve the problem that the business cannot be supported when a PCI device is adapted under an ARM-based server question.
  • FIG. 1 is a flowchart of a method for controlling the startup of a PCI device in an ARM server provided by an embodiment of the present application.
  • the start-up control method of the PCI device in the ARM server provided by the application adjusts the PCI device enumeration order of the Advanced Configuration and Power Management Interface (ACPI) protocol in the ARM server when starting up, so that it is consistent with the PCI device driver.
  • ACPI Advanced Configuration and Power Management Interface
  • the order shown in is the same, so as to meet the requirements of the PCI device driver to realize the business function.
  • the method for controlling the startup of the PCI device in the ARM server includes:
  • the start-up control method of the PCI device in the ARM server provided by the embodiment of the present application can be applied to the chip where the Basic Input Output System (Basic Input Output System, BIOS) is located, or other chips that can run during the boot process and control the basic A chip for communication control of the input and output system.
  • BIOS Basic Input Output System
  • the PCI device targeted by the method for controlling the startup of the PCI device in the ARM server provided by the embodiment of the present application may be a T4 graphics card, and the PCI device driver is specifically: T4 graphics driver.
  • the PCI device targeted by the method for controlling the startup of the PCI device in the ARM server provided in the embodiment of the present application may also be other types of PCI devices.
  • step S101 when starting up, check the unique identifier "Segment:bus:dev:fun" of the PCI device in the PCI device driver to determine the segment number (i.e. the Segment number) corresponding to the PCI device and the number corresponding to the PCI device. Corresponding PCI link bridge bus number (ie RC number "bus"). Run each PCI device driver as required to obtain the segment numbers corresponding to all currently connected PCI devices and the PCI link bridge bus serial numbers corresponding to each PCI device.
  • the traditional PCI device enumeration method enumerates and allocates system resources according to the order of segment numbers from small to large.
  • the segment number corresponding to the bridge bus number so that the advanced configuration and power management interface protocol program can enumerate PCI devices and allocate system resources according to the order displayed in the PCI device driver.
  • step S102 allocate system resources for the PCI devices according to the configured segment numbers, specifically: enumerate each PCI device in ascending order of the configured segment numbers in the advanced configuration and power management interface protocol Allocate system resources.
  • the initial corresponding relationship between the segment number and the serial number of the PCI link bridge bus is generally recorded in the advanced configuration and power management interface protocol.
  • the ARM server there are 12 segments in the ARM server, and two central processing units (Central Processing Unit, hereinafter referred to as CPU) correspond to 6 segments respectively.
  • the first CPU corresponds to segment numbers 0-5
  • the second CPU corresponds to segment numbers 6-11, which is the default relationship between the segment number in the advanced configuration and power management interface protocol and the serial number of the PCI link bridge bus, that is, the initial corresponding relationship.
  • the initial correspondence adjust the segment number of the inconsistency in the advanced configuration and power management interface protocol.
  • step S102 according to the segment number corresponding to each PCI device and the PCI link bridge bus serial number corresponding to each PCI device, configure the advanced configuration and power management interface
  • the segment numbers corresponding to the serial numbers of each PCI link bridge bus in the protocol can specifically include:
  • segment number and PCI link bridge bus serial number corresponding to the same PCI device are consistent with the initial corresponding relationship between each segment number and each PCI link bridge bus serial number pre-established in the advanced configuration and power management interface protocol, then keep the advanced configuration The segment number in the power management interface protocol remains unchanged;
  • segment number and PCI link bridge bus number corresponding to the same PCI device do not match the initial correspondence, then update the advanced configuration and power management interface protocol according to the segment number corresponding to the PCI device and the PCI link bridge bus number corresponding to the PCI device The segment number corresponding to the serial number of the PCI link bridge bus is consistent.
  • the first CPU corresponds to a segment number of 0-5
  • the second CPU corresponds to a segment number of 6-11
  • a segment number of 0 corresponds to a PCI link bridge bus serial number of 0
  • Segment number 1 corresponds to PCI link bridge bus number 1, and so on. If you check through the PCI device driver during the boot process, you can see that the segment number corresponding to a PCI device is 1, the corresponding PCI link bridge bus number is 0, and the segment number corresponding to another PCI device is 0, and the corresponding PCI link bridge bus number is 0.
  • the bridge bus serial number is 1, then in the advanced configuration and power management interface protocol, change the initial correspondence between the PCI link bridge bus serial number and the segment number (RC 0-Segment 0, RC 1-Segment 1%) to (RC 0 -Segment 1, RC 1-Segment 0, ). After completing the adjustment of all inconsistent segment numbers in the advanced configuration and power management interface protocol, enumerate PCI devices and allocate system resources in ascending order of the adjusted segment numbers.
  • the method for starting the PCI device in the ARM server provided by the embodiment of the present application may further include:
  • the output PCI device shows that the consistency check has passed tips.
  • the output PCI device displays a prompt that the consistency check is passed to prompt the user to call the business function.
  • the method for controlling the startup of the PCI device in the ARM server may further include:
  • a virtualized container is created based on a PCI device driver corresponding to a virtualized container creation command.
  • a PCI device that carries a virtual machine service, such as a T4 graphics card, after its PCI device driver runs normally, it can provide a function of creating a virtualized container.
  • a virtual machine service such as a T4 graphics card
  • start-up control method of the PCI device in the ARM server provided in the embodiment of the present application may also include:
  • segment number corresponding to the PCI device and the serial number of the PCI link bridge bus corresponding to the PCI device are not consistent with the corresponding relationship, return the configuration advanced configuration and The segment number corresponding to each PCI link bridge bus serial number in the power management interface protocol is used to allocate system resources for the PCI device according to the configured segment number, or trigger a system restart.
  • the segment number corresponding to the PCI device and the PCI link bridge bus sequence number corresponding to the PCI device are the same as the segment number configured in the advanced configuration and power management interface protocol and the PCI link bridge bus number. If the correspondence between the bus numbers is inconsistent, it means that the PCI device driver cannot provide business functions normally. At this time, you can return to step S102 in the booting process and reconfigure the advanced configuration and power management interface protocols corresponding to the bus numbers of each PCI link bridge. and perform PCI enumeration, resource allocation, or trigger system restart, that is, go back to step S101 to re-execute the startup control of the PCI device.
  • FIG. 2 is a schematic structural diagram of an apparatus for controlling startup of a PCI device in an ARM server provided by an embodiment of the present application.
  • the device for controlling the startup of the PCI device in the ARM server includes:
  • Check unit 201 be set to when starting up, check the segment number corresponding to PCI equipment in the PCI equipment driver of the PCI equipment that ARM server connects and the corresponding PCI link bridge bus serial number of PCI equipment;
  • the configuration unit 202 is configured to configure the segment number corresponding to each PCI link bridge bus sequence number in the advanced configuration and power management interface protocol according to the corresponding segment number of each PCI device and the corresponding PCI link bridge bus sequence number of each PCI device, so as to Allocate system resources for PCI devices according to the configured segment numbers.
  • the device for controlling the startup of the PCI device in the ARM server may also include:
  • the inspection unit is set to check the segment number corresponding to the PCI device, the serial number of the PCI link bridge bus corresponding to the PCI device, and the advanced configuration and power management interface protocol through the PCI device driver and the PCI device viewing command after entering the operating system. Consistency of the corresponding relationship between the configured segment number and the serial number of the PCI link bridge bus;
  • Output unit set to output the PCI device if the segment number corresponding to the PCI device and the PCI link bridge bus serial number corresponding to the PCI device are consistent with the segment number configured in the advanced configuration and power management interface protocol and the PCI link bridge bus serial number Display the prompt that the consistency check is passed.
  • the device for controlling the startup of the PCI device in the ARM server may also include:
  • Restart the control unit set it to if the segment number corresponding to the PCI device and the PCI link bridge bus sequence number corresponding to the PCI device are inconsistent with the corresponding relationship, then return the corresponding segment number according to each PCI device and the PCI link bridge bus corresponding to each PCI device Serial number, configure the segment number corresponding to the serial number of each PCI link bridge bus in the advanced configuration and power management interface protocol, so as to allocate system resources for PCI devices according to the configured segment number, or trigger a system restart.
  • the device for controlling the startup of the PCI device in the ARM server may also include:
  • the receiving unit is configured to receive a virtualization container creation command after outputting the prompt that the PCI device shows that the consistency check is passed;
  • the creating unit is set to create a virtualized container based on the PCI device driver corresponding to the virtualized container creation command.
  • FIG. 3 is a schematic structural diagram of a startup control device of a PCI device in an ARM server provided by an embodiment of the present application.
  • the start-up control device of the PCI device in the ARM server provided by the embodiment of the present application includes:
  • a memory 310 configured to store a computer program 311
  • the processor 320 is configured to execute the computer program 311.
  • the steps of the method for controlling the startup of the PCI device in the ARM server in any one of the above embodiments are implemented.
  • the processor 320 may include one or more processing cores, such as a 3-core processor, an 8-core processor, and the like.
  • the processor 320 may be realized by at least one hardware form of digital signal processing DSP (Digital Signal Processing), field-programmable gate array FPGA (Field-Programmable Gate Array), and programmable logic array PLA (Programmable Logic Array).
  • DSP Digital Signal Processing
  • FPGA Field-Programmable Gate Array
  • programmable logic array PLA Programmable Logic Array
  • Processor 320 may also include a main processor and a coprocessor, the main processor is a processor configured to process data in a wake-up state, also known as a central processing unit CPU; the coprocessor is configured to process data in a standby state.
  • the processor 320 may be integrated with an image processor GPU (Graphics Processing Unit), and the GPU is configured to be responsible for rendering and drawing the content that needs to be displayed on the display screen.
  • the processor 320 may also include an artificial intelligence AI processor configured to process computing operations related to machine learning.
  • Memory 310 may include one or more non-volatile computer-readable storage media, which may be non-transitory.
  • the memory 310 may also include high-speed random access memory, and non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices.
  • the memory 310 is at least set to store the following computer program 311, wherein, after the computer program 311 is loaded and executed by the processor 320, it can implement the start-up control method of the PCI device in the ARM server disclosed in any of the foregoing embodiments related steps.
  • the resources stored in the memory 310 may also include an operating system 312 and data 313, etc., and the storage method may be temporary storage or permanent storage.
  • the operating system 312 may be Windows.
  • the data 313 may include but not limited to the data involved in the above method.
  • the startup control device of the PCI device in the ARM server may further include a display screen 330 , a power supply 340 , a communication interface 350 , an input/output interface 360 , a sensor 370 and a communication bus 380 .
  • FIG. 3 does not constitute a limitation on the boot control device of the PCI device in the ARM server, and may include more or less components than those shown in the figure.
  • the start-up control device of the PCI device in the ARM server provided by the embodiment of the present application includes a memory and a processor.
  • the processor executes the program stored in the memory, it can implement the start-up control method of the PCI device in the ARM server in the above embodiment, and the effect is Ditto.
  • the above-described device and device embodiments are only illustrative.
  • the division of modules is only a logical function division.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or modules may be in electrical, mechanical or other forms.
  • a module described as a separate component may or may not be physically separated, and a component shown as a module may or may not be a physical module, that is, it may be located in one place, or may also be distributed to multiple network modules. Part or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional module in each embodiment of the present application may be integrated into one processing module, each module may exist separately physically, or two or more modules may be integrated into one module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or in the form of software function modules.
  • the integrated modules are realized in the form of software function modules and sold or used as independent products, they can be stored in a non-volatile computer-readable storage medium.
  • the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , executing all or part of the steps of the method in each embodiment of the present application.
  • the embodiment of the present application also provides a non-volatile computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the PCI The steps of the startup control method of the device.
  • the non-volatile computer-readable storage medium may include: U disk, mobile hard disk, read-only memory ROM (Read-Only Memory), random access memory RAM (Random Access Memory), magnetic disk or optical disk, etc. medium for program code.
  • the computer program contained in the non-volatile computer-readable storage medium provided in this embodiment can implement the steps of the method for controlling the startup of the PCI device in the ARM server in the above embodiment when executed by the processor, and the effect is the same as above.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Sources (AREA)

Abstract

本申请公开了一种ARM服务器中PCI设备的启动控制方法、装置、设备及非易失性计算机可读存储介质,在开机启动时,查看ARM服务器连接的PCI设备的PCI设备驱动程序中PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号,根据各PCI设备对应的段号和PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,根据配置后的段号为PCI设备分配系统资源,保证了PCI设备驱动程序中查看PCI设备的顺序与启动过程中PCI设备枚举顺序一致,满足了PCI设备驱动程序实现业务功能的需求,规避了ARM服务器中由于启动过程的不适配导致PCI设备驱动程序无法支持业务功能的问题。

Description

ARM服务器中PCI设备的启动控制方法、装置及设备
相关申请的交叉引用
本申请要求于2022年2月14日提交中国专利局,申请号为202210131438.8,申请名称为“ARM服务器中PCI设备的启动控制方法、装置及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及服务器领域,特别是涉及一种ARM服务器中PCI设备的启动控制方法、装置、设备及非易失性计算机可读存储介质。
背景技术
随着芯片工艺制程不断创新及技术突破,高级精简指令集计算机(Advanced RISC Machine,下文简称ARM)服务器已采用了5nm制程工艺且其本身主打低功耗、高性能的口号让越来越多的客户日渐接受,ARM服务器的应用程度也越加成熟并打破了传统服务器的垄断进入了互联网客户的数据中心,受益于工艺制程的提升使得ARM服务器的核数增加到了80核,ARM凭借着单颗处理器的核数数量优势已力压其他芯片厂商且性能也较其他厂商有质的提升,尤其在公有云、云游戏、云手机、视频、人工智能(Artificial Intelligence,下文简称AI)等领域有广大的客户需求,互联网客户基于ARM单颗处理器80核数的优势在部署上述业务时创造了极大的收益,性价比与其他架构服务器相比得到了极大的提升,这就为越来越多的互联网客户增加了效益。
然而,ARM服务器作为新兴架构的服务器产品,应用部署的数量有限,在各个互联网客户部署应用过程中会遇到各种各样的问题,例如英伟达的NVIDIA TESLA T4显卡(下文简称T4显卡)在适配视频业务时就遇到了虚拟化容器无法支持的情况,而其他架构的服务器则未遇到该问题。
从ARM服务器适配T4显卡过程中出现的上述问题可以看出,在ARM架构的服务器下适配外设部件互连标准(Peripheral Component Interconnect,下文简称PCI)设备出现的异常,是应用ARM服务器满足互联网业务需求过程中必须解决的问题。
发明内容
本申请的目的是提供一种ARM服务器中PCI设备的启动控制方法、装置、设备及非易失性计算机可读存储介质,用于解决ARM架构的服务器下适配PCI设备时出现业务无法支持的问题。
为解决上述技术问题,本申请提供一种ARM服务器中PCI设备的启动控制方法,包括:
在开机启动时,查看ARM服务器连接的PCI设备的PCI设备驱动程序中PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号;
根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,以根据配置后的段号为PCI设备分配系统资源。
可选的,根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,具体包括:
若同一PCI设备对应的段号和PCI链路桥总线序号,均与高级配置和电源管理接口协议中预先建立的各段号与各PCI链路桥总线序号的初始对应关系相符,则保持高级配置和电源管理接口协议中的段号不变;
若同一PCI设备对应的段号和PCI链路桥总线序号,与初始对应关系不相符,则按照PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号更新高级配置和电源管理接口协议中与PCI链路桥总线序号对应的段号以满足一致。
可选的,根据配置后的段号为PCI设备分配系统资源,具体为:
按照高级配置和电源管理接口协议中配置后的段号从小到大的顺序,对各PCI设备进行枚举并分配系统资源。
可选的,还包括:
在进入操作系统后,通过PCI设备驱动程序和PCI设备查看命令,查看PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号、与高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号的对应关系的一致性;
若PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号、与高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号一致,则输出PCI设备显示一致性检验通过的提示。
可选的,还包括:
若PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号与对应关系不一致,则 返回根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,以根据配置后的段号为PCI设备分配系统资源的步骤,或触发系统重启。
可选的,在输出PCI设备显示一致性检验通过的提示之后,还包括:
接收虚拟化容器创建命令;
基于与虚拟化容器创建命令对应的PCI设备驱动程序创建虚拟化容器。
可选的,PCI设备具体为T4显卡,PCI设备驱动程序具体为T4显卡驱动程序。
为解决上述技术问题,本申请还提供一种ARM服务器中PCI设备的启动控制装置,包括:
查看单元,设置为在开机启动时,查看ARM服务器连接的PCI设备的PCI设备驱动程序中PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号;
配置单元,设置为根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,以根据配置后的段号为PCI设备分配系统资源。
为解决上述技术问题,本申请还提供一种ARM服务器中PCI设备的启动控制设备,包括:
存储器,设置为存储计算机程序;
处理器,设置为执行计算机程序,计算机程序被处理器执行时实现如上述任意一项ARM服务器中PCI设备的启动控制方法的步骤。
为解决上述技术问题,本申请还提供一种非易失性计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述任意一项ARM服务器中PCI设备的启动控制方法的步骤。
经研究发现,ARM服务器的系统下通过T4显卡驱动程序查看T4显卡的顺序与系统PCI链路实际的链接顺序不一致的情况,而虚拟化容器的创建需要按照T4显卡驱动程序显示的顺序进行,这就导致T4显卡驱动程序无法创建虚拟化容器而影响了客户业务的部署。类似问题同样可能出现在ARM服务器连接其他PCI设备的场景下。对此,本申请所提供的ARM服务器中PCI设备的启动控制方法,在开机启动时,查看ARM服务器连接的PCI设备的PCI设备驱动程序中PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号,根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,以根据配置后的段号为PCI设备分配 系统资源,保证了PCI设备驱动程序中查看PCI设备的顺序与启动过程中PCI设备枚举顺序一致,从而满足了PCI设备驱动程序实现业务功能的需求。
本申请还提供一种ARM服务器中PCI设备的启动控制装置、设备及非易失性计算机可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种ARM服务器中PCI设备的启动控制方法的流程图;
图2为本申请实施例提供的一种ARM服务器中PCI设备的启动控制装置的结构示意图;
图3为本申请实施例提供的一种ARM服务器中PCI设备的启动控制设备的结构示意图。
具体实施方式
本申请的核心是提供一种ARM服务器中PCI设备的启动控制方法、装置、设备及非易失性计算机可读存储介质,用于解决ARM架构的服务器下适配PCI设备时出现业务无法支持的问题。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
图1为本申请实施例提供的一种ARM服务器中PCI设备的启动控制方法的流程图。
研究发现,ARM服务器不同于其他架构的服务器,其外设部件互连标准PCI链路的唯一标识“Segment:bus:dev:fun”号(其中“Segment”为段,指占用数据文件空间的通称,或数据库对象使用的空间的集合;“bus:dev:fun”,全称“Bus,Device,Function”, 又称BDF号)是跨Segment建立的,这点与传统的英特尔服务器有很大区别。默认情况下服务器启动过程中都是按照PCI链路桥总线序号(简称RC号)从小到大进行枚举并分配系统资源的,而ARM架构的服务器中不同的PCI链路有不同的段号进行分配,这就可能会出现系统下通过T4显卡驱动程序查看T4显卡的顺序与系统PCI链路实际的链接顺序不一致的情况。且随着每次设备开机之间用户可能会将PCI设备接入ARM服务器的不同物理插槽,这种不一致的情况还会出现变动。但虚拟化容器的创建需要按照T4显卡驱动程序显示的顺序进行,这就导致T4显卡驱动程序无法创建虚拟化容器而影响了客户业务的部署。
对此,本申请所提供的ARM服务器中PCI设备的启动控制方法,在开机启动时调整ARM服务器中高级配置和电源管理接口(ACPI)协议的PCI设备枚举顺序,使之与PCI设备驱动程序中显示的顺序一致,从而满足PCI设备驱动程序实现业务功能的需求。
如图1所示,本申请实施例提供的ARM服务器中PCI设备的启动控制方法包括:
S101:在开机启动时,查看ARM服务器连接的PCI设备的PCI设备驱动程序中PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号。
S102:根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,以根据配置后的段号为PCI设备分配系统资源。
在具体实施中,本申请实施例提供的ARM服务器中PCI设备的启动控制方法可以应用于基本输入输出系统(Basic Input Output System,BIOS)所在芯片,或其他能够在开机启动过程中运行并对基本输入输出系统进行通信控制的芯片。
由于发现T4显卡中突出地存在上述问题导致用户无法创建虚拟化容器,本申请实施例提供的ARM服务器中PCI设备的启动控制方法所针对的PCI设备可以为T4显卡,则PCI设备驱动程序具体为T4显卡驱动程序。同理的,本申请实施例提供的ARM服务器中PCI设备的启动控制方法所针对的PCI设备还可以为其他类型的PCI设备。
对于步骤S101来说,在开机启动时,查看PCI设备驱动程序中PCI设备的唯一标识符“Segment:bus:dev:fun”,确定与PCI设备对应的段号(即Segment号)和与PCI设备对应的PCI链路桥总线序号(即RC号“bus”)。根据需要运行各PCI设备驱动程序,得到当前连接的所有PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号。
对于步骤S102来说,传统PCI设备枚举方式都是按照段号从小到大的顺序进行枚举并分配系统资源的,为使PCI设备枚举顺序符合PCI设备驱动程序中显示的顺序,需要依据PCI设备驱动程序中显示的顺序调整PCI设备枚举的段号,即按照PCI设备对应的段号和 PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与PCI链路桥总线序号对应的段号,从而使高级配置和电源管理接口协议程序运行时可以根据PCI设备驱动程序中显示的顺序对PCI设备进行枚举并分配系统资源。
通常的,步骤S102中根据配置后的段号为PCI设备分配系统资源,具体为:按照高级配置和电源管理接口协议中配置后的段号从小到大的顺序,对各PCI设备进行枚举并分配系统资源。
实施例二
在上述实施例的基础上,由于高级配置和电源管理接口协议中通常记载有段号和PCI链路桥总线序号的初始对应关系。具体地,ARM服务器中有12个段,两个中央处理器(Central Processing Unit,以下简称CPU)各自对应6个段,例如第一个CPU对应段号为0-5,第二CPU对应段号为6-11,此作为高级配置和电源管理接口协议中段号和PCI链路桥总线序号的默认关系,即初始对应关系。通常情况下,由于PCI设备连接物理插槽的位置不同,会造成不同情况的不一致问题,则在初始对应关系的基础上,调整高级配置和电源管理接口协议中出现不一致问题的段号即可。
则在本申请实施例提供的ARM服务器中PCI设备的启动控制方法中,步骤S102中根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,具体可以包括:
若同一PCI设备对应的段号和PCI链路桥总线序号,均与高级配置和电源管理接口协议中预先建立的各段号与各PCI链路桥总线序号的初始对应关系相符,则保持高级配置和电源管理接口协议中的段号不变;
若同一PCI设备对应的段号和PCI链路桥总线序号,与初始对应关系不相符,则按照PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号更新高级配置和电源管理接口协议中与PCI链路桥总线序号对应的段号以满足一致。
在实际应用中,假设第一个CPU对应段号为0-5,第二CPU对应段号为6-11,即在初始对应关系中,段号为0对应PCI链路桥总线序号为0,段号为1对应PCI链路桥总线序号为1,以此类推。若在开机启动过程中通过PCI设备驱动程序查看得到某PCI设备对应的段号为1、对应的PCI链路桥总线序号为0,另一PCI设备对应的段号为0、对应的PCI链路桥总线序号为1,则在高级配置和电源管理接口协议中将PCI链路桥总线序号和段号的初始对应关系(RC 0-Segment 0,RC 1-Segment 1……)更改为(RC 0-Segment 1,RC 1- Segment 0,……)。在完成高级配置和电源管理接口协议中所有不一致的段号的调整后,再按照调整后的段号从小到大的顺序枚举PCI设备并分配系统资源。
实施例三
在上述实施例的基础上,为提高PCI设备控制的可靠性,本申请实施例提供的ARM服务器中PCI设备的启动控制方法还可以包括:
在进入操作系统后,通过PCI设备驱动程序和PCI设备查看命令,查看PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号、与高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号的对应关系的一致性;
若PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号、与高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号一致,则输出PCI设备显示一致性检验通过的提示。
在具体实施中,在进入操作系统阶段后,通过PCI设备驱动程序查看PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号,通过PCI设备查看命令查看高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号的对应关系,重新检查两个对应关系的一致性。若PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号、与高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号一致,则表示PCI设备驱动程序可以正常实现业务功能,此时输出PCI设备显示一致性检验通过的提示以提示用户可以调用业务功能。
进一步的,在输出PCI设备显示一致性检验通过的提示之后,本申请实施例提供的ARM服务器中PCI设备的启动控制方法还可以包括:
接收虚拟化容器创建命令;
基于与虚拟化容器创建命令对应的PCI设备驱动程序创建虚拟化容器。
在实际应用中,对于承载虚拟机业务的PCI设备,如T4显卡,在其PCI设备驱动程序正常运行后,可以提供创建虚拟化容器的功能。
此外,本申请实施例提供的ARM服务器中PCI设备的启动控制方法还可以包括:
若PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号与对应关系不一致,则返回根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,以根据配置后的段号为PCI设备分配系统资源的步骤,或触发系统重启。
在具体实施中,若进入操作系统阶段后,检查到PCI设备对应的段号和PCI设备对应的 PCI链路桥总线序号,与高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号的对应关系不一致,则说明PCI设备驱动程序无法正常提供业务功能,此时可以返回开机启动过程中的步骤S102,重新配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号并进行PCI枚举、资源分配,或触发系统重新启动,即回到步骤S101重新执行PCI设备的启动控制。
上文详述了ARM服务器中PCI设备的启动控制方法对应的各个实施例,在此基础上,本申请还公开了与上述方法对应的ARM服务器中PCI设备的启动控制装置、设备及非易失性计算机可读存储介质。
实施例四
图2为本申请实施例提供的一种ARM服务器中PCI设备的启动控制装置的结构示意图。
如图2所示,本申请实施例提供的ARM服务器中PCI设备的启动控制装置包括:
查看单元201,设置为在开机启动时,查看ARM服务器连接的PCI设备的PCI设备驱动程序中PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号;
配置单元202,设置为根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,以根据配置后的段号为PCI设备分配系统资源。
进一步的,本申请实施例提供的ARM服务器中PCI设备的启动控制装置还可以包括:
检验单元,设置为在进入操作系统后,通过PCI设备驱动程序和PCI设备查看命令,查看PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号、与高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号的对应关系的一致性;
输出单元,设置为若PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号、与高级配置和电源管理接口协议中配置的段号与PCI链路桥总线序号一致,则输出PCI设备显示一致性检验通过的提示。
进一步的,本申请实施例提供的ARM服务器中PCI设备的启动控制装置还可以包括:
重启控制单元,设置为若PCI设备对应的段号和PCI设备对应的PCI链路桥总线序号与对应关系不一致,则返回根据各PCI设备对应的段号和各PCI设备对应的PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各PCI链路桥总线序号对应的段号,以根据 配置后的段号为PCI设备分配系统资源的步骤,或触发系统重启。
进一步的,本申请实施例提供的ARM服务器中PCI设备的启动控制装置还可以包括:
接收单元,设置为在输出PCI设备显示一致性检验通过的提示之后,接收虚拟化容器创建命令;
创建单元,设置为基于与虚拟化容器创建命令对应的PCI设备驱动程序创建虚拟化容器。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
实施例五
图3为本申请实施例提供的一种ARM服务器中PCI设备的启动控制设备的结构示意图。
如图3所示,本申请实施例提供的ARM服务器中PCI设备的启动控制设备包括:
存储器310,设置为存储计算机程序311;
处理器320,设置为执行计算机程序311,该计算机程序311被处理器320执行时实现如上述任意一项实施例ARM服务器中PCI设备的启动控制方法的步骤。
其中,处理器320可以包括一个或多个处理核心,比如3核心处理器、8核心处理器等。处理器320可以采用数字信号处理DSP(Digital Signal Processing)、现场可编程门阵列FPGA(Field-Programmable Gate Array)、可编程逻辑阵列PLA(Programmable Logic Array)中的至少一种硬件形式来实现。处理器320也可以包括主处理器和协处理器,主处理器是设置为对在唤醒状态下的数据进行处理的处理器,也称中央处理器CPU;协处理器是设置为对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器320可以集成有图像处理器GPU(Graphics Processing Unit),GPU设置为负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器320还可以包括人工智能AI处理器,该AI处理器设置为处理有关机器学习的计算操作。
存储器310可以包括一个或多个非易失性计算机可读存储介质,该非易失性计算机可读存储介质可以是非暂态的。存储器310还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器310至少设置为存储以下计算机程序311,其中,该计算机程序311被处理器320加载并执行之后,能够实现前述任一实施例公开的ARM服务器中PCI设备的启动控制方法中的相关步骤。另外,存储 器310所存储的资源还可以包括操作系统312和数据313等,存储方式可以是短暂存储或者永久存储。其中,操作系统312可以为Windows。数据313可以包括但不限于上述方法所涉及到的数据。
在一些实施例中,ARM服务器中PCI设备的启动控制设备还可包括有显示屏330、电源340、通信接口350、输入输出接口360、传感器370以及通信总线380。
本领域技术人员可以理解,图3中示出的结构并不构成对ARM服务器中PCI设备的启动控制设备的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的ARM服务器中PCI设备的启动控制设备,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如上实施例中的ARM服务器中PCI设备的启动控制方法,效果同上。
需要说明的是,以上所描述的装置、设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个非易失性计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例中的方法的全部或部分步骤。
为此,本申请实施例还提供一种非易失性计算机可读存储介质,该非易失性计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如ARM服务器中PCI设备的启动控制方法的步骤。
该非易失性计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器ROM(Read-Only Memory)、随机存取存储器RAM(Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例中提供的非易失性计算机可读存储介质所包含的计算机程序能够在被处理器执行时实现如上实施例中的ARM服务器中PCI设备的启动控制方法的步骤,效果同上。
以上对本申请所提供的一种ARM服务器中PCI设备的启动控制方法、装置、设备及非易失性计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及非易失性计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (20)

  1. 一种ARM服务器中PCI设备的启动控制方法,包括:
    在开机启动时,查看ARM服务器连接的PCI设备的PCI设备驱动程序中所述PCI设备对应的段号和所述PCI设备对应的PCI链路桥总线序号;
    根据各所述PCI设备对应的所述段号和各所述PCI设备对应的所述PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各所述PCI链路桥总线序号对应的所述段号,以根据配置后的所述段号为所述PCI设备分配系统资源。
  2. 根据权利要求1所述的启动控制方法,其中,所述根据各所述PCI设备对应的所述段号和各所述PCI设备对应的所述PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各所述PCI链路桥总线序号对应的所述段号,具体包括:
    若同一所述PCI设备对应的所述段号和所述PCI链路桥总线序号,均与所述高级配置和电源管理接口协议中预先建立的各所述段号与各所述PCI链路桥总线序号的初始对应关系相符,则保持所述高级配置和电源管理接口协议中的所述段号不变;
    若同一所述PCI设备对应的所述段号和所述PCI链路桥总线序号,与所述初始对应关系不相符,则按照所述PCI设备对应的所述段号和所述PCI设备对应的所述PCI链路桥总线序号更新所述高级配置和电源管理接口协议中与所述PCI链路桥总线序号对应的所述段号以满足一致。
  3. 根据权利要求1所述的启动控制方法,其中,所述根据配置后的所述段号为所述PCI设备分配系统资源,具体为:
    按照所述高级配置和电源管理接口协议中配置后的所述段号从小到大的顺序,对各所述PCI设备进行枚举并分配系统资源。
  4. 根据权利要求1所述的启动控制方法,其中,还包括:
    在进入操作系统后,通过所述PCI设备驱动程序和PCI设备查看命令,查看所述PCI设备对应的所述段号和所述PCI设备对应的所述PCI链路桥总线序号、与所述高级配置和电源管理接口协议中配置的所述段号与所述PCI链路桥总线序号的对应关系的一致性;
    若一致,则输出PCI设备显示一致性检验通过的提示。
  5. 根据权利要求4所述的启动控制方法,其中,还包括:
    若所述PCI设备对应的所述段号和所述PCI设备对应的所述PCI链路桥总线序号与所述对应关系不一致,则返回所述根据各所述PCI设备对应的所述段号和各所述PCI设备对应的所述PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各所述PCI 链路桥总线序号对应的所述段号,以根据配置后的所述段号为所述PCI设备分配系统资源的步骤,或触发系统重启。
  6. 根据权利要求4所述的启动控制方法,其中,在所述输出PCI设备显示一致性检验通过的提示之后,还包括:
    接收虚拟化容器创建命令;
    基于与所述虚拟化容器创建命令对应的所述PCI设备驱动程序创建虚拟化容器。
  7. 根据权利要求1所述的启动控制方法,其中,所述PCI设备具体为T4显卡,所述PCI设备驱动程序具体为T4显卡驱动程序。
  8. 根据权利要求1所述的启动控制方法,其中,所述启动控制方法应用于基本输入输出系统BISO所在芯片。
  9. 根据权利要求1所述的启动控制方法,其中,所述启动控制方法应用于在开机启动过程中运行并对基本输入输出系统BISO进行通信控制的芯片。
  10. 一种ARM服务器中PCI设备的启动控制装置,包括:
    查看单元,设置为在开机启动时,查看ARM服务器连接的PCI设备的PCI设备驱动程序中所述PCI设备对应的段号和所述PCI设备对应的PCI链路桥总线序号;
    配置单元,设置为根据各所述PCI设备对应的所述段号和各所述PCI设备对应的所述PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各所述PCI链路桥总线序号对应的所述段号,以根据配置后的所述段号为所述PCI设备分配系统资源。
  11. 根据权利要求10所述的启动控制装置,其中,所述启动控制装置还包括:
    检验单元,设置为在进入操作系统后,通过所述PCI设备驱动程序和PCI设备查看命令,查看所述PCI设备对应的所述段号和所述PCI设备对应的所述PCI链路桥总线序号、与所述高级配置和电源管理接口协议中配置的所述段号与所述PCI链路桥总线序号的对应关系的一致性;
    输出单元,设置为若一致,则输出PCI设备显示一致性检验通过的提示。
  12. 根据权利要求11所述的启动控制装置,其中,还包括:
    重启控制单元,设置为若所述PCI设备对应的所述段号和所述PCI设备对应的所述PCI链路桥总线序号与所述对应关系不一致,则返回所述根据各所述PCI设备对应的所述段号和各所述PCI设备对应的所述PCI链路桥总线序号,配置高级配置和电源管理接口协议中与各所述PCI链路桥总线序号对应的所述段号,以根据配置后的所述段号为所述PCI设备分配系统资源的步骤,或触发系统重启。
  13. 根据权利要求11所述的启动控制装置,其中,还包括:
    接收单元,设置为在所述输出PCI设备显示一致性检验通过的提示之后,接收虚拟化容器创建命令;
    创建单元,设置为基于与所述虚拟化容器创建命令对应的所述PCI设备驱动程序创建虚拟化容器。
  14. 根据权利要求10所述的启动控制装置,其中,所述配置单元具体设置为:
    若同一所述PCI设备对应的所述段号和所述PCI链路桥总线序号,均与所述高级配置和电源管理接口协议中预先建立的各所述段号与各所述PCI链路桥总线序号的初始对应关系相符,则保持所述高级配置和电源管理接口协议中的所述段号不变;
    若同一所述PCI设备对应的所述段号和所述PCI链路桥总线序号,与所述初始对应关系不相符,则按照所述PCI设备对应的所述段号和所述PCI设备对应的所述PCI链路桥总线序号更新所述高级配置和电源管理接口协议中与所述PCI链路桥总线序号对应的所述段号以满足一致。
  15. 根据权利要求10所述的启动控制装置,其中,所述配置单元具体通过如下方式实现根据配置后的所述段号为所述PCI设备分配系统资源:
    按照所述高级配置和电源管理接口协议中配置后的所述段号从小到大的顺序,对各所述PCI设备进行枚举并分配系统资源。
  16. 一种ARM服务器中PCI设备的启动控制设备,包括:
    存储器,设置为存储计算机程序;
    处理器,设置为执行所述计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至9任意一项所述ARM服务器中PCI设备的启动控制方法的步骤。
  17. 根据权利要求16所述的启动控制设备,其中,所述处理器包括主处理器和协处理器,其中,
    所述主处理器设置为对在唤醒状态下的数据进行处理;
    所述协处理器设置为对在待机状态下的数据进行处理。
  18. 根据权利要求16所述的启动控制设备,其中,所述启动控制设备包括显示屏、电源、通信接口、输入输出接口、传感器以及通信总线。
  19. 根据权利要求18所述的启动控制设备,其中,
    所述存储器、所述处理器、所述显示屏、所述电源、所述通信接口、所述输入输出接口以及所述传感器均与所述通信总线连接。
  20. 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至9任意一项所述ARM服务器中PCI设备的启动控制方法的步骤。
PCT/CN2022/122738 2022-02-14 2022-09-29 Arm服务器中pci设备的启动控制方法、装置及设备 WO2023151287A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210131438.8A CN114185607B (zh) 2022-02-14 2022-02-14 Arm服务器中pci设备的启动控制方法、装置及设备
CN202210131438.8 2022-02-14

Publications (1)

Publication Number Publication Date
WO2023151287A1 true WO2023151287A1 (zh) 2023-08-17

Family

ID=80545807

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/122738 WO2023151287A1 (zh) 2022-02-14 2022-09-29 Arm服务器中pci设备的启动控制方法、装置及设备

Country Status (2)

Country Link
CN (1) CN114185607B (zh)
WO (1) WO2023151287A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117331723A (zh) * 2023-11-30 2024-01-02 苏州元脑智能科技有限公司 应用于arm服务器的arm安全固件配置方法及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114185607B (zh) * 2022-02-14 2022-06-14 苏州浪潮智能科技有限公司 Arm服务器中pci设备的启动控制方法、装置及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110134446A (zh) * 2019-04-18 2019-08-16 深圳市广和通无线股份有限公司 启动pcie设备扫描的方法
US20200012501A1 (en) * 2018-07-09 2020-01-09 Dell Products L.P. Information Handling Systems And Method To Provide Secure Shared Memory Access At OS Runtime
CN112732615A (zh) * 2021-01-07 2021-04-30 苏州浪潮智能科技有限公司 一种设备调控方法、装置、设备及存储介质
CN113760667A (zh) * 2021-08-25 2021-12-07 联想(北京)有限公司 一种硬盘管理方法、装置、可读存储介质及电子设备
CN114185607A (zh) * 2022-02-14 2022-03-15 苏州浪潮智能科技有限公司 Arm服务器中pci设备的启动控制方法、装置及设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7493438B2 (en) * 2001-10-03 2009-02-17 Intel Corporation Apparatus and method for enumeration of processors during hot-plug of a compute node
EP2951705A4 (en) * 2013-01-29 2016-11-02 Hewlett Packard Development Co ASSIGNING PROCESSORS TO MEMORY TOPOGRAPHY CONFIGURATION
US9489211B2 (en) * 2015-03-31 2016-11-08 Vmware, Inc. Exposing memory-mapped IO devices to drivers through firmware
US10534732B2 (en) * 2015-06-29 2020-01-14 Vmware, Inc. Exposing memory-mapped IO devices to drivers by emulating PCI bus and PCI device configuration space
US10684976B1 (en) * 2018-07-09 2020-06-16 American Megatrends International, Llc Automatic bus resource adjustment in a multiple root bridge computing system
CN113111025B (zh) * 2021-06-10 2021-09-24 深圳市科力锐科技有限公司 Pci设备映射方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200012501A1 (en) * 2018-07-09 2020-01-09 Dell Products L.P. Information Handling Systems And Method To Provide Secure Shared Memory Access At OS Runtime
CN110134446A (zh) * 2019-04-18 2019-08-16 深圳市广和通无线股份有限公司 启动pcie设备扫描的方法
CN112732615A (zh) * 2021-01-07 2021-04-30 苏州浪潮智能科技有限公司 一种设备调控方法、装置、设备及存储介质
CN113760667A (zh) * 2021-08-25 2021-12-07 联想(北京)有限公司 一种硬盘管理方法、装置、可读存储介质及电子设备
CN114185607A (zh) * 2022-02-14 2022-03-15 苏州浪潮智能科技有限公司 Arm服务器中pci设备的启动控制方法、装置及设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117331723A (zh) * 2023-11-30 2024-01-02 苏州元脑智能科技有限公司 应用于arm服务器的arm安全固件配置方法及装置
CN117331723B (zh) * 2023-11-30 2024-02-27 苏州元脑智能科技有限公司 应用于arm服务器的arm安全固件配置方法及装置

Also Published As

Publication number Publication date
CN114185607A (zh) 2022-03-15
CN114185607B (zh) 2022-06-14

Similar Documents

Publication Publication Date Title
WO2023151287A1 (zh) Arm服务器中pci设备的启动控制方法、装置及设备
CN110063051B (zh) 用于重新配置服务器的系统和方法以及服务器
CN109791500B (zh) 虚拟机实例和客户可编程逻辑之间的中间主机集成电路
US9612846B2 (en) Out-of-band (OOB) real-time inventory and configuration of original equipment manufacturer (OEM) devices using advanced configuration and power interface (ACPI) and unified extensible firmware interface (UEFI) services
US8972990B2 (en) Providing a seamless transition for resizing virtual machines from a development environment to a production environment
US8990809B1 (en) Creating a virtual appliance using existing installation manifest
US9965307B2 (en) Building virtual appliances
US10019298B2 (en) Middleware interface and middleware interface generator
US10031762B2 (en) Pluggable cloud enablement boot device and method
US9361120B2 (en) Pluggable cloud enablement boot device and method that determines hardware resources via firmware
US10303487B2 (en) System and method for booting an information handling system
US9389874B2 (en) Apparatus and methods for automatically reflecting changes to a computing solution in an image for the computing solution
CN112148422A (zh) 一种io处理的方法和装置
US11360925B2 (en) Method and apparatus for host adaptation to a change of persona of a configurable integrated circuit die
US20200379930A1 (en) System and method for transforming legacy sr-iov devices to appear as siov queue pairs using a management controller
CN112486522A (zh) 含智能网卡OpenStack裸机的部署方法及装置
CN108737499A (zh) 服务器配置方法和装置
WO2022199335A1 (zh) 服务器部件固件升级的控制方法、装置、设备及存储介质
US20130074068A1 (en) Method, System, and Computer Program for Implementing a Customizable Virtual Appliance
CN115858102A (zh) 一种用于部署支持虚拟化硬件加速的虚拟机的方法
CN114024853A (zh) 一种裸金属节点的硬件信息收集方法、系统及相关组件
US11144326B2 (en) System and method of initiating multiple adaptors in parallel
JP2023546907A (ja) クラスタリング可能なサービスの自動クラスタリングのためのシステムおよび方法
WO2023066246A1 (zh) 云手机安装应用的方法、系统和客户端云手机
CN115794132A (zh) 操作系统部署方法、装置、设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22925645

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 18571202

Country of ref document: US