CN112527495A - 硬件和软件资源优化 - Google Patents

硬件和软件资源优化 Download PDF

Info

Publication number
CN112527495A
CN112527495A CN202010972007.5A CN202010972007A CN112527495A CN 112527495 A CN112527495 A CN 112527495A CN 202010972007 A CN202010972007 A CN 202010972007A CN 112527495 A CN112527495 A CN 112527495A
Authority
CN
China
Prior art keywords
hardware
software
processor
parameters
computer
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202010972007.5A
Other languages
English (en)
Inventor
黄金宝
马彦俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qindarui Co.
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN112527495A publication Critical patent/CN112527495A/zh
Pending legal-status Critical Current

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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及硬件和软件资源优化。提供了一种用于改善硬件和软件资源优化技术的方法和***。该方法包括检索和分析硬件和软件***的操作参数。作为响应,确定关于与硬件和软件***相关联的修改的大小调整需求的影响概率,并且确定包括映射到操作参数的逻辑规则的操作。执行操作并确定关于对执行修改的大小调整需求的实际影响。作为响应,关于硬件和软件***的操作功能来修改硬件和软件***的操作分配。

Description

硬件和软件资源优化
技术领域
本发明总体上涉及一种用于优化硬件和软件资源的方法,并且具体地涉及一种用于改进与分析硬件和软件***的操作参数相关联的硬件和软件技术以及修改硬件和软件***的操作分配的方法和相关***。
背景技术
典型的***环境在大小调整需求功能方面几乎没有灵活性。优化资源使用可能会实现一个复杂的过程,该过程可能很耗时并且需要大量资源。此外,资源使用优化过程可能与不同的约束、挑战和性能问题相关联。
发明内容
本发明的第一方面提供了一种硬件和软件资源优化方法,包括:由硬件控制器的处理器从多个硬件和软件***中检索多个硬件和软件***的操作参数;以及由所述处理器分析所述操作参数;由所述处理器基于所述分析结果确定关于与所述硬件和软件***相关联的修改的大小调整需求的影响概率;由所述处理器基于所述分析结果生成包括映射到所述操作参数的逻辑规则的操作;由所述处理器执行所述操作;由所述处理器基于执行结果确定关于执行与所述硬件和软件***相关联的所述修改的大小调整需求的实际影响;响应于执行结果和确定实际影响,由所述处理器修改多个硬件和软件***关于所述多个硬件和软件***的操作功能的操作分配。
本发明的第二方面提供了一种计算机程序产品,其包括存储计算机可读程序代码的计算机可读硬件存储设备,所述计算机可读程序代码包括算法,该算法在由硬件控制器的处理器执行时实现硬件软件资源优化方法,该方法包括:由处理器从多个硬件和软件***中检索多个硬件和软件***的操作参数;以及由所述处理器分析所述操作参数;由所述处理器基于所述分析结果确定对与所述硬件和软件***相关联的修改的大小调整需求有关的影响的概率;由所述处理器基于所述分析结果生成包括映射到所述操作参数的逻辑规则的操作;由所述处理器执行所述操作;由所述处理器基于执行结果确定与执行与所述硬件和软件***相关联的修改的大小调整需求有关的实际影响;响应于执行结果和确定实际影响,由所述处理器修改所述多个硬件和软件***关于所述多个硬件和软件***的操作功能的操作分配。
本发明的第三方面提供了一种硬件控制器,其包括耦合至计算机可读存储单元的处理器,该存储单元包括指令,该指令在由计算机处理器执行时实现硬件和软件资源优化方法,该方法包括:由所述处理器从多个硬件和软件***中检索多个硬件和软件***的操作参数;以及由所述处理器分析所述操作参数;由所述处理器基于所述分析结果确定对与所述硬件和软件***相关联的修改的大小调整需求有关的影响的概率;由所述处理器基于所述分析结果生成包括映射到所述操作参数的逻辑规则的操作;由所述处理器执行所述操作;由所述处理器基于执行结果确定与执行与所述硬件和软件***相关联的修改的大小调整需求有关的实际影响;响应于执行结果和确定实际影响,由所述处理器修改所述多个硬件和软件***关于所述多个硬件和软件***的操作功能的操作分配。
本发明有利地提供了一种能够实现用于硬件和软件执行的资源使用优化过程的简单方法和相关***。
附图说明
图1示出了根据本发明实施例的用于改善与分析用于操作分配修改的硬件和软件***的操作参数相关联的硬件和软件技术的***;
图2示出了根据本发明实施例的详述由图1的***启用的处理流程的算法,用于改进与分析用于操作分配修改的硬件和软件***的操作参数相关联的硬件和软件技术;
图3示出了根据本发明的实施例来自环境的管理和对环境的管理的详细视图;
图4示出了根据本发明的实施例来自图3的环境的管理的内部视图;
图5示出了根据本发明的实施例对图3的环境进行管理的内部视图;
图6示出了根据本发明的实施例详述了用于实现多云持续大小调整构造过程的过程流程的算法;
图7示出了根据本发明的实施例包括输入组件、映射组件、输出组件和大小调整组件的***;
图8示出了根据本发明的实施例由用于改进与分析用于操作分配修改的硬件和软件***的操作参数相关联的硬件和软件技术的图1的***使用或包括的计算机***;
图9示出了根据本发明的实施例的云计算环境;以及
图10示出了根据本发明的实施例的由云计算环境提供的一组功能抽象层。
具体实施方式
图1示出了根据本发明的实施例的用于改进与分析用于修改硬件和软件***25的操作分配的硬件和软件***25的操作参数相关联的硬件和软件技术。客户端***通常配置为生成工作负载并将其迁移到多云环境。同样,(与工作负载***关联的)大小调整过程可能难以确定要为包含托管工作负载的管理环境提供的属性。可以实施不同的约束、挑战、安全性和性能属性,以使客户端能够实现与基于技术方面不断变化的需求相关联的最佳大小调整方法(在多云环境中)。可能会生成关键目标,以确保提高性能、利用率和动态大小调整,以实现技术目标。同样,特定的技术目标通常需要转换为技术需求,以管理所需的大小调整变化。因此,***100通过在多云环境中执行认知的持续大小调整算法代码,使得能够基于工作负载提供与硬件和软件资源相关联的动态且持续的大小调整功能的过程。
***100包括用于执行硬件和软件资源优化过程的硬件/软件模块,该过程包括:
1.从与参数(例如虚拟(v)CPU参数、vMem参数、存储参数、无服务器参数、状态参数、集成参数、网络参数、安全参数、不同的云环境参数等)相关的不同来源(例如本地云、公共云等)获取输入(例如一系列功能、需求、约束和环境条件)。
2.通过确定一组不同的逻辑映射规则(例如,与使用、数据、交易、路线、活动、输入、输出、握手相关)(通过智能逻辑和智能引擎执行)来分析不同的输入属性并确定各种操作,以使用逻辑映射规则映射不同的属性。
3.利用每个映射规则来指定指示改变与映射规则相关联的服务或服务的组件的资源分配的信息。资源分配的变化尤其可以包括为优化而增加或减少vCPU,关于利用率的vMem变化,所需存储的分配,无服务器容器的使用,状态检查,所需的集成或变化,网络构建和重新定义路由,重新设计特定的云环境等。
4.转换技术需求变化,以转换特定智能技术逻辑的大小调整需求,以确保有关转换为技术构造逻辑的技术需求。此外,硬件和软件资源被部署在与动态需求变化相关的多云环境中。可能会针对以下方面的每个轮询(例如5秒轮询)生成持续的大小调整需求:生成影响大小调整需求的交易变化,检测异常和所需的大小调整变化;要求改变的硬件组件的配置,以及影响大小调整变化的未知变化。或者,在某些情况下,每次轮询都会生成持续的大小调整需求。
5.连续的大小调整算法代码的使用与以下几项相关:概率公式、贝叶斯定理、标准定义和持续的变化管理,以确定用于确定大小调整需求和每个工作负载和模式组件所需变化的概率。
图1的***100包括:通过网络7互连的硬件控制器14和硬件/软件***25。硬件控制器14包括传感器/电路/逻辑12和(特定定义的)存储器***8。存储***8包括软件代码/引擎28,其包括可执行代码。存储***8可以包括单个存储***。备选地,存储***8可以包括多个存储***。硬件控制器14和硬件/软件***25均可以包括嵌入式设备。嵌入式设备在本文中定义为专用设备或计算机,其包括计算机硬件和软件(功能固定或可编程)的组合,这些硬件或软件专门设计用于执行专用功能。可编程嵌入式计算机或设备可以包括专用编程接口。在一个实施例中,硬件控制器14和硬件/软件***25可各自包括专用硬件设备,该专用硬件设备包括专用(非通用)硬件和电路(即,专用离散非通用模拟、数字和基于逻辑的电路),用于(独立地或组合地)执行参照图1-图7描述的过程。专用离散非通用模拟、数字和基于逻辑的电路(例如,传感器/电路/逻辑12等)可以包括专有的特殊设计组件(例如,专用集成电路,例如“专用集成”电路(ASIC)设计为仅实现用于分析硬件和软件***25的操作参数以修改硬件和软件***25的操作分配的自动化过程。硬件/软件***25的分配可以包括分配硬件、软件和(硬件/软件***25的)内存25a到用于执行由硬件/软件***25执行的操作功能的替代***。传感器/电路/逻辑12可以包括任何类型的内部或外部传感器,其中包括全球定位传感器(GPS)传感器、蓝牙信标传感器、蜂窝电话检测传感器、Wi-Fi定位检测传感器、三角测量离子传感器、活动跟踪传感器、温度传感器、超声传感器、光学传感器、视频检索设备、湿度传感器、电压传感器、网络流量传感器等。网络7可以包括任何类型的网络,尤其包括:局域网(LAN)、广域网(WAN)、互联网、无线网络等。
***100针对与指定需要匹配的不同属性的映射规则相关联的指定属性执行认知多云大小调整算法代码。每个映射规则针对新的多云环境中的映射规则指定为服务或组件分配资源更改分配相关的信息。技术需求变化的转换可以转换为特定的智能技术逻辑,以确保在多云环境中实现需求。同样,可以通过执行概率公式和贝叶斯定理来确定确定大小调整需求和每个工作负载所需变化的概率。
图2示出了根据本发明实施例的说明由图1的***100实现的处理流程的算法,用于改进与分析用于修改硬件和软件***的操作分配的硬件和软件***的操作参数相关联的硬件和软件技术。图2的算法中的每个步骤可以由执行计算机代码的计算机处理器以任何顺序实现和执行。另外,图2的算法中的每个步骤可以由图1的硬件控制器14和硬件/软件***25组合地实现和执行。在步骤200中,检索和分析硬件和软件***的操作参数。硬件和软件***可以与多云环境相关联。操作参数尤其可以包括虚拟CPU参数、虚拟存储器参数、硬件存储器参数、无服务器参数、操作状态参数、组件集成参数、网络参数、安全性参数、云环境参数等。
在步骤204中,基于步骤200的分析结果,确定对与硬件和软件***关联的修改的大小调整需求的影响概率。在步骤210中,包括映射到操作参数的逻辑规则的操作基于步骤200的分析结果生成并执行。逻辑规则尤其可以包括使用规则、数据处理规则、交易规则、活动规则、输入/输出规则、握手规则,属性映射规则等。
在步骤212中,基于执行步骤210的操作,确定对执行修改的大小调整需求(与硬件和软件***相关联)的实际影响。在步骤218中,确定硬件和软件***所需的大小调整需求和变化。在步骤220中,针对硬件和软件***的操作功能来修改硬件和软件***的操作分配。修改操作分配可以包括将操作分配迁移到附加的硬件和软件***。可选地,修改操作分配可以包括调整硬件和软件***的存储器分配的大小。修改的操作分配可以包括为优化增加或减少虚拟CPU功能,根据利用率修改虚拟内存,所需存储的分配,无服务器容器的硬件使用,状态验证,需要确定的集成或变化,网络构建,重新设计特定的云环境等。
在步骤224中,生成用于执行与执行硬件和软件资源优化方法相关的未来过程的自学习软件代码,并将其存储在硬件控制器的存储器结构的修改部分中。
图3示出了根据本发明的实施例的来自环境的管理(Managed-from environment)314以及对环境进行管理(manage to environment)325的详细视图300。来自(与图1的硬件控制器相关联的)环境的管理314包括云管理平台314a、虚拟化层314b和物理层314c。来自环境的管理314连接到部署服务器315,部署服务器315被配置为在数据库318中存储和执行认知多云持续大小调整代码。数据库318被配置为存储输入到智能逻辑和智能引擎的数据,用于在多云环境中获得和修改持续大小调整的组件。来自环境的管理314能够用于管理、操作和控制对环境325的管理。对环境的管理325包括驻留在云或非云环境(例如,数据中心)内部的基础设施和应用325a。
图4示出了根据本发明的实施例的来自图3的环境的管理314的内部视图414。云管理平台314a包括模块414a…414d,用于实现多云环境的自动化、定义关联的蓝图、实现技术规则和预定义的服务目录。虚拟化层314b包括管理程序415a、平面网络存储区域网络415b(用于存储用于管理多云的信息)和存储区域网络(SAN)415c。物理层314c包括服务器418a、网络418b和存储器418c,实现用于多云环境的管理。
图5示出了根据本发明的实施例的对图3的环境的管理325的内部视图525。对环境的管理325包括托管在多云环境540中的基础结构和应用程序组件528和内部部署环境组件529。多云环境包括公共云、私有云以及包含不同容量和大小的单个组件的多云提供商。例如,由第一公司提供的vCPU和由第二公司提供的vCPU可能具有不同的容量,并且可能需要不同的vCPU大小才能在多云环境的持续大小调整的范围内进行部署。
图6示出了根据本发明的实施例的详述了用于实现多云持续大小调整构造的处理流程的算法。例如,请求者(例如***管理员)可以基于输入到***中的需求(来自用户/客户端以及与相关功能、需求和约束相关的数据)来启动***修改。可替代地,可以基于属性来自动启动***修改,所述属性尤其是诸如来自用户/客户端的检测或确定的要求以及相关联的数据。在步骤602中可以从各种源接收数据。对接收到的数据进行分析(在步骤604中)以确定所需的操作。该分析可以包括针对数据执行概率公式代码、贝叶斯定理代码、操作规则映射代码、连续变化管理代码以及注释决策引擎代码。分析的输出用于确定是否需要持续进行***大小调整。如果在步骤608中确定需要持续进行***大小调整,则在步骤610中,触发大小调整代码,并且更新智能逻辑和智能引擎数据库。如果在步骤608中确定不需要持续进行***大小调整,则在步骤612中,检查预定义标准,并确定是否需要更新智能逻辑和智能引擎数据库。
图7示出了根据本发明的实施例的包括输入组件702、映射组件704、输出组件706和大小调整组件(即,执行管理器)708的***700。***700执行与***大小调整需求相关联的多云持续大小调整构建算法。输入组件702包括多个源,多个源包括本地云和附加的公共云输入,这些输入能够将输入提供给多云持续大小调整模块。多个源与硬件/软件参数相关联,尤其例如vCPU、vMem、存储器、无服务器、状态、集成、网络、安全性等。映射组件704包括用于执行与以下***属性相关联的逻辑映射规则的代码:使用、数据、交易、路线、活动、输入、输出、握手、预测性构造等。输出组件706实现以下操作:增加或减少vCPU以进行优化,根据使用率改变vMem,所需存储器的分配,确定使用容器,检查***状态,进行所需的改变,网络构建以及重新设计特定的云环境。
大小调整组件708生成以下输出功能中的至少一项:
1.在指定的时间间隔(例如每5秒)中执行一次轮询。
2.交易变化。
3影响大小调整需求的流程中的变化。
4.检测与大小调整变化有关的异常。
5.处置需要变化的硬件组件。
6影响大小调整变化的未知变化
多云持续大小调整模块被配置为通过执行以下过程中的至少一个来确定持续***大小调整需求:概率公式实现过程、贝叶斯定理实现过程、准则定义实现过程、持续变化管理实现过程,以及注释决策引擎实现过程。
概率公式实现过程与二项式实验导致x成功或+或–x成功的概率相关。二项式概率公式执行如下:P(在n次试验中成功r次)=nCr pr qn-r,其中:
p=成功的概率
q=失败概率(或事件的补充)
n=试验总次数
r=我们想要获得的特定事件个数
nCr表示从n中选择r个事件,并且可以写为:nCr=n!r!(n-r)!…
贝叶斯定理实现过程能够在给定指定变量的值的情况下确定结果的概率。例如,在如下先验知识(d)的情况下,确定假设(h)为真的概率:
P(h|d)=(P(d|h)*P(h))/P(d)其中:
P(h|d)=后验概率。给定数据d,假设h为真的概率,其中P(h|d)=P(d1|h)*P(d2|h)*....*P(dn|h)*P(d)
P(d|h)=似然。给定假设h为真,数据d的概率。
P(h)=类别先验概率。假设h为真的概率(与数据无关)
P(d)=预测器先验概率。数据的概率(与假设无关)
基于通过智能逻辑智能引擎数据库定义和管理的规则的注释,执行标准定义实现过程,其中捕获技术过程、输入和性能的规则以确保在大小调整过程被实现之前满足标准。
持续的变化管理实现过程与预定义的控制点相关联,以确保在满足所有规则并通过在多云环境中定义的变化管理规则接收批准后,通过来自环境的管理自动执行变化。
注释决策引擎实现过程生成捕获的合并结果(源自分析),并通过标准定义工具运行以基于持续的变更管理来确定最终输出。
以下实现示例描述了与机构相关联的过程,该机构需要为新产品的推出增加工作量,使得许多估计的交易可能不准确。因此,由于推出期间的营销活动,分配的***容量无法支持交易的突然增加。当注释决策引擎根据以下过程接收并合并来自***700的输出时,将启动该过程:
用于确定得到的概率结果的大小调整确定过程确定需要大小调整以确保***能够在推出期间继续支持意外交易的增加。
用于确定所需的额外工作量的规则执行过程进行大小调整,以使得任何检测到的小于预定百分比(例如,小于100%)的偏差能够相应地执行现有基线。
如果偏差小于初始推出的现有基线的预定百分比(例如,小于100%),则执行注释器引擎决策过程。
通过注释器引擎生成的结果能够最终确定结果,并触发执行管理器增加vCPU,vMem并添加另一个网关,以确保相应地管理其他交易。随后,执行管理器(通过代码)执行调整管理环境大小所需的步骤,以使其可以继续支持在推出期间生成的其他交易。
图8示出了根据本发明的实施例由图1的***100使用或包括的计算机***90(例如,图1的硬件控制器14和硬件/软件***25),用于改进与分析用于操作分配修改的硬件和软件***的操作参数相关联的硬件和软件技术。
本发明的各方面可以采取以下形式:完全硬件实施例,完全软件实施例(包括固件、驻留软件、微代码等)或组合了软件和硬件方面的在本文中通常可以全部称为“电路”、“模块”或“***”的实施例。
本发明可以是***,方法和/或计算机程序产品。该计算机程序产品可以包括其上具有用于使处理器执行本发明的方面的计算机可读程序指令的计算机可读存储介质。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
图8所示的计算机***90包括:图8的实施例包括处理器91,耦合至处理器91的输入设备92,耦合至处理器91的输出设备93以及均耦合至处理器91的存储设备94和95。输入设备92尤其可以是键盘、鼠标、照相机、触摸屏等。输出设备93尤其可以是打印机、绘图仪、计算机屏幕、磁带、可移动硬盘、软盘等。存储设备94和95尤其可以是硬盘、软盘、磁带、诸如光盘(CD)或数字视盘(DVD)的光学存储器、动态随机存取存储器(DRAM)和只读存储器(ROM)等。存储设备95包括计算机代码97。计算机代码97包括用于改进与分析用于操作分配修改的硬件和软件***的操作参数相关联的硬件和软件技术的算法(例如,图2的算法)。处理器91执行计算机代码97。存储设备94包括输入数据96。输入数据96包括计算机代码97所需的输入。输出设备93显示计算机代码97的输出。存储设备94和/或存储设备94和95(或一个或多个其他存储设备例如只读存储器(ROM)设备或固件85)可以包括算法(例如,图2的算法),并且可以用作其中包含计算机可读程序代码和/或在其中存储其他数据的计算机可用介质(或计算机可读介质或程序存储设备),其中计算机可读程序代码包括计算机代码97。通常,计算机***90的计算机程序产品(或其他制造品)可以包括计算机可用介质(或程序存储设备)。
在一些实施例中,不是从硬盘驱动器、光盘或其他可写、可重写或可移动硬件存储设备95进行存储和访问,而是可以将存储的计算机程序代码84(例如,包括算法)存储在静态、不可移动的、只读存储介质(诸如ROM设备或固件85等),或者可由处理器91直接从这种静态的、不可移动的只读介质访问。类似地,在一些实施例中,所存储的计算机程序代码97可以被存储为ROM设备或固件85,或者可以由处理器91直接从这种ROM设备或固件85访问,而不是从更具动态性或可移动性的硬件数据存储设备95(例如硬盘驱动器或光盘)来访问。
仍然,本发明的任何组件可以由服务提供商创建、集成、托管、维护、部署、管理、服务等,该服务提供商提供改进与分析用于操作分配修改的硬件和软件***的运行参数相关联的硬件和软件技术。因此,本发明公开了一种用于部署、创建、集成、托管、维护和/或集成计算基础设施的过程,包括将计算机可读代码集成到计算机***90中,其中该代码与计算机***90结合能够执行一种方法,该方法能够改进与分析用于操作分配修改的硬件和软件***的操作参数相关联的硬件和软件技术。在另一个实施例中,本发明提供了一种商业方法,其基于订阅、广告和/或费用来执行本发明的过程步骤。也就是说,诸如解决方案集成商之类的服务供应商可以提出能够改进与分析用于进行操作分配修改的硬件和软件***的操作参数相关联的硬件和软件技术的过程。在这种情况下,服务提供商可以创建、维护、支持等为一个或多个客户执行本发明的过程步骤的计算机基础设施。作为回报,服务提供商可以根据订阅和/或费用协议从客户那里收到付款,和/或服务提供商可以从向一个或多个第三方出售广告内容中收到付款。
尽管图8将计算机***90示出为硬件和软件的特定配置,但是本领域普通技术人员理解硬件和软件的任何配置可以结合图8的特定计算机***90用于上述目的。例如,存储设备94和95可以是单个存储设备的部分,而不是单独的存储设备。
云计算环境
首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。
可测量的服务:云***通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作***、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作***或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作***和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作***、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。
公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。
现在参考图9,其中显示了示例性的云计算环境50。如图所示,云计算环境50包括云计算消费者使用的本地计算设备可以与其相通信的一个或者多个云计算节点10,本地计算设备例如可以是个人数字助理(PDA)或移动电话54A,台式电脑54B、笔记本电脑54C和/或汽车计算机***54N。云计算节点10之间可以相互通信。可以在包括但不限于如上所述的私有云、共同体云、公共云或混合云或者它们的组合的一个或者多个网络中将云计算节点10进行物理或虚拟分组(图中未显示)。这样,云的消费者无需在本地计算设备上维护资源就能请求云计算环境50提供的基础架构即服务(IaaS)、平台即服务(PaaS)和/或软件即服务(SaaS)。应当理解,图6显示的各类计算设备54A,54B,54C和54N仅仅是示意性的,云计算节点10以及云计算环境50可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。
现在参考图10,其中显示了云计算环境50(图9)提供的一组功能抽象层。首先应当理解,图10所示的组件、层以及功能都仅仅是示意性的,本发明的实施例不限于此。如图10所示,提供下列层和对应功能:
硬件和软件层60包括硬件和软件组件。硬件组件的示例包括:大型机61;基于RISC(精简指令集计算机)架构的服务器62;服务器63;刀片服务器64;存储设备65;以及网络和网络组件66。在一些实施例中,软件组件包括网络应用服务器软件67和数据库软件68。
虚拟化层70提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器71;虚拟存储器72;虚拟网络73,包括虚拟专用网络;虚拟应用程序和操作***74;和虚拟客户端75。
在一个示例中,管理层80可以提供下述功能:资源供应功能:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和***。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能:为消费者和***管理员提供对云计算环境的访问。服务水平管理功能:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。
工作负载层101提供了可以利用云计算环境可能实现的功能的示例。在该层中,可提供的工作负载或功能的示例包括:地图绘制与导航102;软件开发及生命周期管理103;虚拟教室的教学提供104;数据分析处理105;交易处理106;以及用于改进与分析用于操作分配修改的硬件和软件***的操作参数相关联的硬件和软件技术108。
尽管这里出于说明的目的已经描述了本发明的实施例,但是许多修改和改变对于本领域技术人员将变得显而易见。因此,所附权利要求书旨在涵盖落入本发明的真实精神和范围内的所有这样的修改和改变。

Claims (13)

1.一种硬件和软件资源优化方法,包括:
由硬件控制器的处理器从硬件和软件***中检索所述硬件和软件***的操作参数;
由所述处理器分析所述操作参数;
由所述处理器基于所述分析结果,确定关于与所述硬件和软件***相关联的修改的大小调整需求的影响概率;
由所述处理器基于所述分析结果生成包括映射到所述操作参数的逻辑规则的操作;
由所述处理器执行所述操作;
由所述处理器基于所述执行结果,确定关于执行与所述硬件和软件***相关联的所述修改的大小调整需求的实际影响;以及
响应于所述执行的结果和所述确定所述实际影响,由所述处理器修改关于所述硬件和软件***的操作功能的所述硬件和软件***的操作分配。
2.根据权利要求1所述的方法,其中所述操作参数包括从由以下各项组成的组中选择基于硬件和软件的参数:虚拟CPU参数、虚拟存储器参数、硬件存储器参数、无服务器参数、操作状态参数、组件集成参数、网络参数、安全参数和云环境参数。
3.根据权利要求1所述的方法,其中所述逻辑规则包括从由以下各项组成的组中选择的规则:使用规则、数据处理规则、交易规则、活动规则、输入/输出规则、握手规则和属性映射规则。
4.根据权利要求1所述的方法,其中所述修改的操作分配包括从由以下各项组成的组中选择的分配变化:增加或减少用于优化的虚拟CPU功能,根据利用率修改虚拟内存,所需存储的分配,容器无服务器硬件使用,状态验证,集成或变化所需的确定,网络构建和路由重新定义以及特定云环境的重新设计。
5.根据权利要求1所述的方法,其中所述修改包括将所述硬件和软件***的所述操作分配迁移到另外多个硬件和软件***。
6.根据权利要求1所述的方法,还包括:
由所述处理器确定所述硬件和软件***所需的大小调整需求和变化,其中所述修改还响应于所述确定的结果。
7.根据权利要求6所述的方法,其中所述修改包括调整所述硬件和软件***的存储器分配的大小。
8.根据权利要求1所述的方法,还包括:
由所述处理器生成自学习软件代码,用于执行与执行所述硬件和软件资源优化方法相关的未来过程;以及
由所述处理器将所述自学习软件代码存储在所述硬件控制器的存储器结构的修改部分内。
9.根据权利要求1所述的方法,其中所述硬件和软件***与多云环境相关联。
10.根据权利要求1所述的方法,还包括:
为在控制硬件中创建、集成、托管、维护和部署计算机可读代码中的至少一项提供至少一种支持服务,所述代码由计算机处理器执行来实现:所述检索、所述分析、所述确定所述影响概率、所述产生所述执行、所述确定所述实际影响以及所述修改。
11.一种计算机程序产品,包括存储计算机可读程序代码的计算机可读硬件存储设备,所述计算机可读程序代码包括算法,该算法在由硬件控制器的处理器执行时实现硬件和软件资源优化方法,所述方法包括用于实现如权利要求1至10的任何一项所述的方法所包含的步骤。
12.一种硬件和软件资源优化***,所述***包括:
执行存储在存储设备中的指令的处理器,其中处理器执行如权利要求1至10的任何一项所述的方法所包含的步骤。
13.一种硬件和软件资源优化装置,包括一个或多个模块,所述一个或多个模块被配置得用于实现如权利要求1至10的任何一项所述的方法所包含的步骤。
CN202010972007.5A 2019-09-19 2020-09-16 硬件和软件资源优化 Pending CN112527495A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/576,057 US11030015B2 (en) 2019-09-19 2019-09-19 Hardware and software resource optimization
US16/576057 2019-09-19

Publications (1)

Publication Number Publication Date
CN112527495A true CN112527495A (zh) 2021-03-19

Family

ID=74880861

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010972007.5A Pending CN112527495A (zh) 2019-09-19 2020-09-16 硬件和软件资源优化

Country Status (2)

Country Link
US (1) US11030015B2 (zh)
CN (1) CN112527495A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023131283A1 (en) * 2022-01-07 2023-07-13 International Business Machines Corporation Cognitive allocation of specialized hardware resources

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11645049B2 (en) * 2021-04-13 2023-05-09 International Business Machines Corporation Automated software application generation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641590A (zh) * 2004-01-13 2005-07-20 国际商业机器公司 通过硬件资源利用报告优化性能的方法和数据处理***
CN102971724A (zh) * 2010-02-22 2013-03-13 维图斯瑞姆有限公司 与数据中心环境内的基于单元式虚拟资源的管理有关的方法和装置
CN105978704A (zh) * 2015-03-12 2016-09-28 国际商业机器公司 创建新的云资源指令集体系结构
US20180341463A1 (en) * 2017-05-25 2018-11-29 International Business Machines Corporation Software object definition and integration
US20190155659A1 (en) * 2017-11-17 2019-05-23 International Business Machines Corporation Shared hardware and software resource replacement

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10191778B1 (en) 2015-11-16 2019-01-29 Turbonomic, Inc. Systems, apparatus and methods for management of software containers
US9838370B2 (en) 2012-09-07 2017-12-05 Oracle International Corporation Business attribute driven sizing algorithms
US9785460B2 (en) 2013-05-03 2017-10-10 Vmware, Inc. Dynamic virtual machine sizing
US10009292B2 (en) 2014-10-03 2018-06-26 International Business Machines Corporation Cloud independent tuning service for autonomously managed workloads
US11573831B2 (en) 2017-06-20 2023-02-07 International Business Machines Corporation Optimizing resource usage in distributed computing environments by dynamically adjusting resource unit size

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641590A (zh) * 2004-01-13 2005-07-20 国际商业机器公司 通过硬件资源利用报告优化性能的方法和数据处理***
CN102971724A (zh) * 2010-02-22 2013-03-13 维图斯瑞姆有限公司 与数据中心环境内的基于单元式虚拟资源的管理有关的方法和装置
CN105978704A (zh) * 2015-03-12 2016-09-28 国际商业机器公司 创建新的云资源指令集体系结构
US20180341463A1 (en) * 2017-05-25 2018-11-29 International Business Machines Corporation Software object definition and integration
US20190155659A1 (en) * 2017-11-17 2019-05-23 International Business Machines Corporation Shared hardware and software resource replacement

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023131283A1 (en) * 2022-01-07 2023-07-13 International Business Machines Corporation Cognitive allocation of specialized hardware resources

Also Published As

Publication number Publication date
US11030015B2 (en) 2021-06-08
US20210089360A1 (en) 2021-03-25

Similar Documents

Publication Publication Date Title
US10979859B2 (en) Allocation of resources in a networked computing environment based on physical location mapping
US20170060609A1 (en) Managing a shared pool of configurable computing resources which has a set of containers
US11704123B2 (en) Automated orchestration of containers by assessing microservices
US10838702B2 (en) Analyzing and optimizing container images in cloud computing
US9785475B2 (en) Managing a shared pool of configurable computing resources using a set of scaling factors and a set of workload resource data
US11928038B2 (en) Managing data sets based on user activity
US11636386B2 (en) Determining data representative of bias within a model
US11017874B2 (en) Data and memory reorganization
CN112527495A (zh) 硬件和软件资源优化
US20220188290A1 (en) Assigning an anomaly level to a non-instrumented object
US11307958B2 (en) Data collection in transaction problem diagnostic
US20200097197A1 (en) Disk storage capacity reorganization
US20190354281A1 (en) Automated mobile device interface prediction and detection
US11429381B1 (en) Software application refactoring and modification
US20230177355A1 (en) Automated fairness-driven graph node label classification
US20230043505A1 (en) Deep learning software model modification
US11656913B2 (en) Demand-driven locale management
US11176182B2 (en) Applying approximate measure values from dissimilar maps
US11954524B2 (en) Compliance aware application scheduling
US20230177113A1 (en) Privacy-preserving class label standardization in federated learning settings
US20220138614A1 (en) Explaining machine learning based time series models
US20230108391A1 (en) Artificial intelligence module communication
US20230409935A1 (en) Predicting the need for xai in artificial intelligence systems
US20220350507A1 (en) Dynamic Management of Data Storage for Applications Based on Data Classification
US10776576B2 (en) Automated mobile device detection

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220119

Address after: USA New York

Applicant after: Qindarui Co.

Address before: USA New York

Applicant before: International Business Machines Corp.