论文阅读笔记:AutoOS: Make Your OS More Powerful by Exploiting Large Language Models

中文释义:AutoOS:利用大型语言模型让操作系统更强大

作者:Huilai Chen, Yuanbo Wen, Limin Cheng, Shouxu Kuang,Yumeng Liu, Weijia Li,Ling Li ,

Rui Zhang,Xinkai Song, Wei Li , Qi Guo, Yunji Chen

会议:Forty-first International Conference on Machine Learning(ICML 2024)

时间:2024年5 月 2 日

下载链接:https://openreview.net/forum?id=Rp8R9C0Sth

论文分享PPT:AutoOS:MakeYourOSMorePowerfulbyExploitingLargeLanguage资源-优快云文库

Abstract

随着人工智能物联网(AIoT)的快速发展,针对各种 AIoT 应用场景定制和优化操作系统(OS)内核配置对于最大化系统性能至关重要。然而,由于问题过于复杂(例如,Linux 内核中有超过 15000 个配置选项)、评估成本巨大以及选项容易出错导致操作系统启动失败等原因,自动优化 Linux 内核成为一个悬而未决的问题。在本文中,我们介绍了 AutoOS,这是一个利用大语言模型的新型框架,可针对各种人工智能物联网应用场景自动定制和优化操作系统内核配置。受固有目录结构内核配置过程的启发,我们首先将研究问题表述为在动态树上进行优化。然后,我们提出了一个新颖的框架,将基于状态机的遍历算法整合为观察剪枝-提出-行动-纠正循环,从而有效地细化优化空间,确保操作系统成功启动。实验结果表明,AutoOS 可以自动定制和优化操作系统内核配置,无需人工操作。更重要的是,与供应商提供的配置相比,AutoOS 的性能甚至提高了 25%

1.Introduction

应用场景不同,需要根据使用场景和硬件设备配置内核

定制和优化操作系统(OS)内核配置已成为最大化系统性能的关键(Kuo 等人,2020b),特别是考虑到嵌入式设备有限的硬件资源(Lin 等人,2020)。虽然供应商通常会提供通用的默认配置(Kuo 等人,2020a),但这些预设往往无法满足特定的优化目标(所以出现了种种的可编程设备),因此为操作系统内核调整提供了大量机会,以释放整个系统功能的全部潜力。

想要通过大语言模型的方式自动配置内核其实面临着三重挑战

  1. Linux 内核有超过 15000 个配置选项(Oh 等人,2021 年;Franz 等人,2021 年),创造了一个巨大而错综复杂的优化空间,在这个空间中,选项之间相互影响、相互依存(Mortara & Collet,2021 年),使得性能优化变得非常困难。例如,将两套性能良好的配置选项直接组合在一起,往往会导致性能不佳。

  2. 其次,每个配置的性能评估都很耗时(Xia 等人,2023 年)(如 1∼2 小时),涉及操作系统内核编译、安装、启动和性能测试等多个步骤。

  3. 第三,由于存在许多与功能相关的选项,整个优化过程容易出错,可能导致操作系统启动失败

1.其他方法的问题

这一问题的难度使得包括神经网络方法(Herzog 等人,2021 年;Martin 等人,2021 年;Zhang & Huang,2019 年)和贝叶斯优化方法(Jung 等人,2021 年;Shar 等人,2023 年)在内的现有方法难以奏效。神经网络方法可以通过从成熟的数据集中训练计算模型来学习和适应执行特定任务(Ak-gun 等人,2020 年;郝等人,2020 年;Doudali 等人,2019 年)。然而,这些方法需要大量人工从头开始创建数据集,特别是在耗时的操作系统内核配置性能评估过程中。因此,迄今为止还缺乏可用的数据集。贝叶斯优化方法通常可以通过建立概率模型来指导搜索过程,从而高效地找到昂贵的评估函数的最优值(Ziomek & Ammar,2023;Liu et al.,2023a)。然而,贝叶斯优化方法通常最适合对少于 20 维的连续域进行优化(Frazier,2018 年),因此这些方法仍然无法解决我们的问题,因为优化空间巨大,如果只考虑布尔选项,则包含 215,000 多种可能性。此外,神经网络方法和贝叶斯优化方法都没有考虑到容易出错的选项,而这对于保证操作系统成功启动具有决定性作用。

为了应对上述挑战,我们建议利用预先训练好的大型语言模型来自动优化操作系统的性能。然而,如图 1(a)所示,直接提示最先进的 LLM(即 ChatGPT)针对用户特定需求生成相关的操作系统内核配置选项似乎效果不佳。这个简单的尝试表明,它只能让 LLM 输出少量(10∼20)的通用配置选项,这与用户的需求不符,也意味着性能几乎没有提高。此外,由于不同版本的 Linux 内核的选项名称和数量略有不同,因此控制 LLM 很难灵活适应特定的操作系统内核版本。此外,LLMs 也不适合直接读取操作系统发行版或硬件供应商提供的 Linux 内核默认配置文件(如图 1(b) 列出的部分默认配置)并进行进一步优化的自然方法,这主要是因为提示标记的限制。例如,最先进的 GPT-4 的上下文限制为 32,000 个提示符(OpenAI,2023)(当然目前已经不是这样了,最先进的GPTo1,https://openai.com/index/introducing-openai-o1-preview/),而整个 Linux 内核配置包含约 100,0000 个字。

总而言之,目前的通用GPT,在内核编译配置上表现效果不佳。

2.AutoOS工作的价值

为此,在这项工作中,我们提出了一个新颖的框架,即 AutoOS,利用 LLMs 的强大功能,针对各种 AIoT 应用场景自动定制和优化操作系统内核配置。其关键之处在于,我们利用了 LLMs 中的专家先验知识,从而缩小了广阔的优化空间,与用户需求保持一致,同时检测并绕过易出错的选项,确保操作系统成功启动。为此,我们首先利用操作系统内核配置固有的树状结构特性,将这一问题表述为在动态树上进行优化。然后,我们提出一种基于状态机的随机遍历算法,与操作系统内核配置交互,探索最优配置选项组合。此外,我们还引入了一个校正阶段,允许 LLM 自动调试操作系统启动失败。实验结果表明,与供应商提供的默认配置相比,AutoOS 的性能提高了 1.08 到 1.25 倍。更重要的是,AutoOS 可以在数小时内自动定制和优化操作系统内核配置,无需人工操作,大大降低了专家手动优化的耗时成本。

AutoOS 是首个利用 LLM 自动定制和优化操作系统内核配置的工作。

受固有的目录结构内核配置过程的启发,我们首先将操作系统内核配置问题表述为动态树上的优化问题。据此,我们提出的框架集成了一种基于状态机的遍历算法,即观察-剪枝-提议-行动-纠正循环,它能有效地细化优化空间,保证操作系统成功启动。

我们在多个公共 Linux 发行版上进行了全面评估,结果表明,AutoOS 可以自动定制和优化操作系统内核配置,无需人工操作。此外,AutoOS 还显示出优于专家手动优化的性能,突出了其在该领域的功效和潜在影响。

好好好,这不是直接把我们搞系统的人给优化了

2.Problem Formulation

在本节中,我们将介绍研究问题的提出。我们首先介绍操作系统内核配置的背景。然后,我们提出在动态树上进行优化的问题定义。最后,我们简要介绍 LLM 与操作系统之间的交互过程。

1.OS内核配置空间抽象

这个是模型结构,3.1、3.2那个是在这个模型结构上执行的具体算法

Linux 内核的 “make menuconfig ”命令是其构建系统的组成部分,可以实现交互式内核选项配置(Martin 等人,2021 年)。用“make menuconfig ”编译内核。

该命令自然是基于目录的,配置选项通常表现出复杂的、有时是多层次的依赖关系。在图形化的人工配置界面中,依赖关系决定了未满足的条件会导致选项无法选择或隐藏。受此启发,我们将配置空间概念化为动态树形结构。选项组合的变化会导致树形结构的动态转换,不可选选项类似于分支的移除,而新的可选选项则类似于分支的插入。

将研究问题形式化如下:AutoOS 将内核配置空间视为一个优化问题,定义在一个动态树上:

  1. 配置空间作为树:首先,将配置空间想象成一棵树,这棵树由节点(N)和边(E)组成。在这个上下文中,节点代表配置选项,也就是操作系统内核可以调整的参数。边代表这些节点(配置选项)之间的关系。

  2. 优化目标:给定一个优化目标g,比如为特定的AIoT设备定制和优化操作系统内核,存在一个特殊的节点子集Lg,这些节点能够达到最佳的操作系统性能。

  3. 启动问题节点:还有一个节点集合K,包含了与操作系统启动问题相关的配置节点。

  4. 评估函数:定义了一个评估函数f,它可以接受任意节点子集,并给出一个实数值作为性能评分。这个函数的作用是评价给定的配置选项集合的性能。

  5. 优化问题:问题的目标是找到一个节点集合M,使得f(M)最大化,其中M接近于Lg(最佳性能节点集合),同时不与K交集(避免启动问题的节点)。

2.动态树模型需要达到的一些要求

  1. 普遍适用性:这种树模型适用于所有Linux内核版本,可以全面探索配置空间。

  2. 维护依赖性:树的动态特性能够精细地维护不同配置选项之间的依赖关系。

  3. 分支结构:树的分支结构适合进行剪枝和随机搜索,这将在第三节中讨论。

  4. 层次处理:树的每一层内容可以顺序处理,每层的叶节点数量有限,这就符合大型语言模型(LLMs)的上下文长度限制。

3.交互的原子动作

在优化动态树时,必须让 LLM 具备与操作系统内核配置交互的能力。遗憾的是,现有的内核源代码并不提供这种功能,只是以图形界面的形式提供。我们发现,“kconfiglib ”库(ulfalizer,2023 年)提供了与界面类似的命令行交互方式。为了解决这个问题,AutoOS 对该库进行了细微的工程修改,抽象出一系列原子 API,用于基于代码的动态树操作。这些原子应用程序接口包括返回树中特定层次节点的所有语义信息、修改特定配置、返回配置更改后新出现的所有选项等。

3.Method

1.工作流程

在2.1动态树的基础上

图 2:该框架包括五个阶段:观察、剪枝、提议、行动和校正。最初的四个阶段旨在探索内核配置选项的潜在组合,以提高性能,同时避免影响系统启动的选项,并剪除多余和不相关的选项。最后的修正阶段是一个调试过程,确保候选配置能够成功启动操作系统

具体来说,AutoOS 采用了三项关键技术。首先,AutoOS 引入了具有随机性的动态树遍历算法,即状态机框架的前四个阶段,以增强在优化空间内对最优配置选项的搜索。其次,为了有效地引导 LLM 识别出符合用户要求的优化配置选项集,我们采用了自解释(Rajani 等人,2019 年)机制来充分利用 LLM。最后,修正阶段实现了自动调试,通过 LLMs 的专家先验知识迅速检测并修复启动故障。这些关键技术将在随后的小节中详细介绍。

(a) 所提出的 AutoOS 框架可以在 LLM 和操作系统内核之间进行有效交互,浏览操作系统内核配置空间,满足用户针对特定 AIoT 应用场景定制和优化操作系统内核的要求。我们设计了一个基于 LLM 的系统化提示模板,它像一个状态机,由五个阶段组成:观察、修剪、提议、行动和纠正。最初的四个阶段旨在探索可提高性能的内核配置选项的潜在组合,同时避免影响系统启动的选项,并修剪冗余和不相关的选项。最后的修正阶段是一个调试过程,确保候选配置能够成功启动操作系统。(b) 举例说明了如何在特定树级上遍历动态树,详情将在第 3.2 节中详细介绍。

2.具有一定随机性的遍历

算法1:

为了在整个优化空间中找到可能提高性能的配置选项组合 M,AutoOS 采用了一种带有一定随机性的方法来遍历配置选项的动态树。同时,为了尽量避免组合中影响启动的选项和无关选项,引入了剪枝策略。算法 1 详细介绍了 AutoOS 中这种随机性动态树遍历的伪代码。下面将详细介绍遍历算法的每个阶段:

1.观察阶段 (Observing stage)

  • 在这个阶段,采用原子操作为LLM提供关于所有目录D和当前级别配置选项S的全面数据,包括选项的名称和类型等详细信息。这使得LLM能够适应特定配置空间的特点。

2.剪枝阶段 (Pruning stage)

  • 指导LLM评估每个树级别的子目录,实施中间节点的剪枝。

  • 对于每个中间节点ni,有两个选择:剪枝(p)和不剪枝(¬p)。

  • LLM基于内部知识确定剪枝的概率P(p|ni),并通过抽样过程进行剪枝,使剪枝既随机又受知识指导。

  • 这种方法旨在预先排除与性能优化无关的子树的探索,并避免可能导致启动失败的选项,从而减少最终校正阶段的校正成本。

3.提议阶段 (Proposing stage)

  • 在这个阶段,为LLM提供观察和剪枝阶段收集的选项的语义细节,以及来自内核源代码的全面信息(例如,数值选项的范围)。

  • 对于每个配置选项si,基于概率P(si)和LLM内部知识,决定其是否包含在集合M中,并为这些选定的选项推荐设置,这可能会提升操作系统性能。

4.行动阶段 (Acting Stage)

  • 根据提议阶段的建议,将建议的选项排队执行,系统地应用提议。

  • 如果配置空间的动态树中发生了更改,将从执行队列中排除消失的选项。

  • 修改后的选项以红色标记,并返回提议阶段以识别任何新出现的选项。

  • 这个阶段与提议阶段一起建立了一个循环过程,以管理选项的持续出现,直到动态树稳定。

5.校正阶段 (Correcting Stage)

  • 完成动态树遍历后,获得配置集M。

  • 在这个阶段,采用闭环过程,将错误反馈和M的组成部分传递给LLM,用于检测和纠正启动失败。

  • 由于之前的剪枝和自我解释机制,M和K的交集被限制,以及通过筛选无关选项使M中的选项数量相对较少,使得闭环校正机制能够在大多数情况下以可接受的成本有效处理启动问题。

  • 如果只有一个选项导致启动失败,并且闭环过程正在运行,校正阶段可以将调试开销从O(∥M ∩ K∥)(检查所有有效选项)或O(log ∥M ∩K∥)(二分查找)有效降低到O(1)。

  • 如果LLM辅助的校正阶段未能检测到错误,AutoOS使用二分查找来识别故障选项,确保操作系统成功启动。

3.自解释机制

我们发现,地方语言学家在阐述配置选项对优化目标的影响时,以及在决定是否为同一目标推荐该选项时,表现出了不一致性。例如,LLMs 可能会认可一些配置,而根据他们的解释,这些配置可能会对性能产生负面影响。这种不一致性会导致 LLM 建议可能会损害操作系统内核性能的配置。为了解决这种不一致性,我们在建议阶段引入了自我解释机制,如图 2(a)所示。通过进行两轮自我解释,我们主要实现了对 LLM 建议配置的一致推理和决策过程。这种机制可以有效增强 AutoOS 的优化能力。此外,通过利用 LLMs 的专家先验知识,自我解释机制避免了修改冗余选项或启动失败选项,从而大大精简了优化空间并减少了修正工作。

4.Evaluation

在本节中,我们首先介绍实验装置。然后,我们报告主要的实验结果,主要集中在针对各种硬件和场景定制和优化 Linux 内核配置选项,以提高整体性能。此外,我们还进行了消融研究,以验证 AutoOS 关键技术(即剪枝和自解释机制)的有效性。

1.实验配置

我们在三个不同的操作系统内核配置任务中对 AutoOS 进行了评估。表 1 列出了操作系统、选项编号、硬件、场景和优化目标的详细信息,我们将在下文中详细说明:

操作系统环境:我们使用的操作系统包括三种不同的 Linux 发行版,即 PolyOS(PolyOS,2023 年)、Fedora 和 Ubuntu。具体来说,PolyOS 是为 RISC-V 架构设计的轻量级操作系统,Linux 内核版本为 5.17.2。Fedora的Linux 内核版本为 5.18.8。这些发行版主要支持智能移动和 AIoT 场景。此外,我们还采用了 Ubuntu 22.04.3,这是一款广泛使用的通用发行版,运行于 Linux 内核版本 6.2.0,包含超过 16,621 个配置选项,可确保对通用场景进行全面评估。

试验平台:实验在两种不同的硬件上进行:一个人工智能物联网设备和一台 PC 机。

  • 前者是由 SiFive Freedom U740(FU740)驱动的 Hifive 嵌入式开发板,该 SoC 包括高性能多核、64 位双发、超标量 RISC-V 处理器和 16GB DDR4;

  • 后者是基于英特尔(R)酷睿(TM)i7-13700F x86 64 架构处理器的 PC,配备 15GB DDR5 和 30GB 交换内存。

测试基准: 我们采用流行的 Unixbench 分数(Ge 等人,2020 年;Xu 等人,2022 年;Bergman 等人,2023 年)作为基准,也是我们实验的优化目标。UnixBench 从文件 I/O、进程创建、系统函数调用等多个角度对操作系统的性能进行了全面评估。为了进一步验证我们方法的有效性,我们还将 LMbench(McVoy 等人,1996;Kuo 等人,2020b)作为基准。该基准包括针对不同操作系统任务的 54 个子指标。

比较基线:我们首先将每个操作系统的供应商提供或默认内核配置作为基线。包括神经网络方法和贝叶斯优化方法在内的常用方法都无法解决这一问题,主要原因是配置数量庞大、评估成本高昂,以及选择容易出错的选项导致操作系统启动失败的风险。因此,我们将 LLM-Vanilla(即直接提示 LLM 优化操作系统内核配置,即直接使用GPT,用图1的方式)视为第二条基线,如图 1 所示。需要注意的是,LLM-Vanilla 的提示长度有限,无法读取所有 Linux 内核配置文件,因此我们直接提示推荐与优化相关的配置(约 10-20 个选项),并将这些配置与上述默认配置进行整合,评估其性能。

模型:在本实验中,我们直接将公开可用的 GPT-3.5-Turbo 集成到了 AutoOS 中。为确保一定程度的随机性,LLM 的温度设置为 1.0(当温度设置为1.0时,模型的输出会遵循自然概率分布,即模型会根据其学习到的数据以正常的方式进行预测或生成文本。这个设置通常被认为是“中性”的,既不倾向于增加随机性也不倾向于减少随机性,而是保持模型原有的行为特性)

搜索设置:为了使每次随机遍历动态树时探索的配置选项多样化,AutoOS 会自动探索 Unixbench 的不同优化目标,包括整数或浮点运算、execl 吞吐量、文件传输、管道上下文切换、进程创建吞吐量、系统调用能力或直接提高 Unixbench 的总分。我们让 AutoOS 针对不同的操作系统分布,使用优化的操作系统内核配置进行 24 次搜索试验,然后报告其中的 “最佳总得分”。这意味着,AutoOS 的设计为总搜索时间设定了上限(即,考虑到候选操作系统内核配置的评估成本约为 1 至 2 小时,搜索时间约为一天)。

2.整体表现

下面说的就是,性能提升了很多

表2:PolyOS 在 Si Five Unmatched 板上运行的最佳优化结果,在 UnixBench 评估中得分较高(较高的是 更好的)。在第一列中,“default”代表来自人类的操作系统配置,“LLM-Vanilla”对应于来自人的简单方法 图1的左侧。结果显示,AutoOS 的性能比默认值提高了 8.4%。

表3:在 Si Five Unmatched 板上运行的 Fedora 的优化结果,在 UnixBench 评估中得分。

表 4. PC 上ntu 的优化结果,以及 UnixBench 评估中的分数。

AIoT 应用场景的结果。表 2 和表 3 分别列出了 PolyOS 和 Fedora 的实验结果,代表了 AutoOS 在 AIoT 场景下的性能改进。结果表明,AutoOS 的性能始终优于所选的两个基线。具体而言,与供应商提供的默认操作系统内核配置相比,AutoOS 的性能分别提高了 1.08 倍和 1.26 倍。值得注意的是,虽然PolyOS的默认操作系统内核配置经过了详尽的人工优化,但AutoOS仍然获得了更好的性能,这表明AutoOS能够发现比专家更好的操作系统内核配置,而无需人工努力。

LLM-vanilla 的性能比默认的操作系统内核配置更差,这与优化目标背道而驰。原因有二:1)由于令牌上下文窗口有限,LLM-Vanilla 无法与整个操作系统内核配置选项交互;2)LLM-Vanilla 无法处理不同配置选项之间的相互依赖关系,而这对性能至关重要。AutoOS 通过提出的框架解决了这一问题,该框架在动态树上集成了基于状态机的遍历算法,可以迭代推荐不同树级别的选项,并通过树结构自然地识别选项之间的相关性。

通用场景的结果 我们将 AutoOS 应用于 PC 上运行的通用 Ubuntu 操作系统,进一步验证了我们方法的通用性。如在 PolyOS、Fedora 和 Ubuntu 上进行的实验中,AutoOS 在 24 次实验中平均每次搜索执行了 0.125、0.417 和 0.625 个修正阶段。这表明,AutoOS 生成的操作系统在很多情况下无需修正阶段即可成功启动。

LMbench 性能提升 我们之前的实验主要集中在使用 Unixbench 这一特定基准进行优化和评估。为了验证我们的方法没有过度适应给定的优化目标,我们在 PolyOS 上选择了针对 UnixBench 优化的操作系统内核配置,并对其在 LMbench 上的性能进行了评估。实验结果表明,在 LMbench 的 54 个不同子指标中,AutoOS 在其中的 37 个指标中获得了更好的性能,幅度从 10%到 30%不等,并且在其中的 13 个指标(主要包括整数和浮点运算)中获得了相当的性能,而在其中的 4 个指标中仅获得了稍差的性能。该实验有力地证明了 AutoOS 并没有过度适应优化目标,而是有效地根据特定硬件定制和优化了操作系统内核配置。

3.消融实验

使用消融实验,体现了剪枝和自解释的效果

修剪和自我解释的功效。我们 进行了深入的消融研究,以阐明 AutoOS 中包含的剪枝和自解释方法的功效。术语 “plain”指的是 AutoOS 没有剪枝和自我解释功能,但保留了框架的其他组件。为了评估这些策略的影响,我们采用了几个指标,如表 5 所示。这些指标包括建议选项总数和导致启动失败的选项总数。此外,搜索时间仅包括与 LLM 交互的持续时间,不包括评估时间,而修正时间则包括整个调试和操作系统评估过程。总分即 UnixBench 分数,与之前相同。

在 PolyOS 上的实验结果表明,剪枝技术和自我解释技术都能有效减少修改选项的总数(从 230 个减少到 20 个和 74 个),从而完善和缩小了优化空间。此外,这两种技术都能绕过那些会导致启动失败的选项。值得注意的是,“自我解释 ”技术实现了零启动失败选项,从而避免了后续修正的需要,并显著缩短了 AutoOS 的总运行时长,突出了其显著精简优化空间和减少修正工作的有效性。尽管与 LLM 进行两轮交互所需的搜索时间只增加了极少,但自我解释确保了与 AutoOS 相当的性能,这表明它在优化操作系统性能方面非常有效。

自我解释的不同迭代。我们在 AutoOS 中采用了两轮自我解释。提议的自我解释机制旨在减少第 3.3 节中讨论的 LLM 中的不一致性。我们进行了一项消融研究,以检验不同的自我解释迭代对这种不一致性的影响。这项研究涉及一个数据集,其中包括 136 个选项,这些选项均来自单个动态树遍历中的剪枝阶段(即自我解释的输入)。配置选项在操作系统性能方面被分为积极、消极和中性。报告的指标包括 “做”(提出选项设置)、“想”(相信选项对性能的影响)和整体一致性的计数。我们探讨了几种自我解释的迭代:0、1、2 和 8。

表 6 中的结果表明,AutoOS 中的两次自我解释迭代:1)有效提高了 AutoOS 的一致性,从 28.6%(0 次迭代)提高到 93.38%(2 次迭代);2)足以解决这种不一致性,因为将自我解释迭代次数从 2 次增加到 8 次不再会带来显著改善(93.38%→94.85%);相反,它需要在 LLM 中花费大量令牌。

5.Related Work

数据驱动的方法。贝叶斯方法。相关工具

6.Conclusion

在本文中,我们介绍了 AutoOS,这是一个利用大型语言模型的新型框架,可针对各种人工智能物联网应用场景自动定制和优化操作系统内核配置。所提出的框架集成了基于状态机的遍历算法,即观察-剪枝-建议-行动-纠正循环,可有效细化优化空间并保证操作系统成功启动。实验结果表明,AutoOS 可以自动定制和优化操作系统内核配置,无需人工操作。此外,AutoOS 还显示出优于通过详尽的人工优化所获得的性能,突出了其在该领域的功效和潜在影响。

作为利用 LLM 解决自动定制和优化操作系统内核这一挑战性问题的首次尝试,未来的工作主要集中在两个方面: 1)有几种潜在的技术可以进一步提高性能,例如在利用 LLMs 精炼优化空间时自然地与贝叶斯优化相结合;2)将 AutoOS 的应用扩展到操作系统内核性能优化之外的其他任务,例如应对能耗优化的挑战。我们期待这项工作能激发这一领域的更多高级研究。

7.Limitations

AutoOS 可以很容易地适用于基于 Linux 的操作系统或那些提供类似 kconfig 配置命令的操作系统。不过,它目前还不能直接应用于非 Linux 内核操作系统的优化任务。在非基于 Linux 内核的系统中,实施 AutoOS 的主要障碍在于缺乏可随时访问的将内核配置抽象为动态树的应用程序接口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值