当前位置: 首页 > news >正文

便捷、快速、稳定、高性能!以 GPU 实例演示 Alibaba Cloud Linux 3 对 AI 生态的支持 | 龙蜥技术

编者按:日前,Alibaba Cloud Linux 3 为使 AI 开发体验更高效,提供了一些优化升级,本文为“Alibaba Cloud Linux 3 AI 能力介绍”系列文章预告篇,以 GPU 实例为例,为大家演示 Alibaba Cloud Linux 3 对 AI 生态的支持。接下来还将陆续发布 2 篇系列文章,主要介绍基于 Alinux 的云市场镜像为用户提供开箱即用的 AI 基础软件环境,以及基于 AMD 介绍 AI 能力差异化。敬请期待。更多 Alibaba Cloud Linux 3 信息可前往官网查看:https://www.aliyun.com/product/ecs/alinux

图片

当在 Linux 操作系统上开发人工智能(AI)应用程序时,研发人员可能会遇到一些挑战,这些挑战包括但不限于:

1. GPU 驱动程序:为了在 Linux 系统上使用 NVIDIA GPU 进行训练或推理,需要安装和配置正确的 NVIDIA GPU 驱动程序。由于不同的操作系统和 GPU 型号可能需要不同的驱动程序,因此可能需要一些额外的工作。

2. AI 框架编译:在 Linux 系统上使用 AI 框架进行编程时,需要安装和配置适当的编译器和其他依赖项。这些框架通常需要进行编译,因此需要确保正确安装了编译器和其他依赖项,并正确配置编译器。

3. 软件兼容性:Linux 操作系统支持许多不同的软件和工具,但不同版本和发行版之间可能存在兼容性问题。这可能会导致某些程序无法正常运行或者在某些操作系统上不可用。因此,研发人员需要了解其工作环境的软件兼容性,并进行必要的配置和修改。

4. 性能问题:AI 软件栈是一个异常复杂的系统,通常需要对不同型号的 CPU 和 GPU 进行专业的优化,才能发挥其最佳性能。软硬件协同的性能优化对于 AI 软件栈来说是一个具有挑战性的任务,需要拥有高超的技术水平和专业知识。

阿里云第三代云服务器操作系统 Alibaba Cloud Linux 3(以下简称“Alinux 3”)是基于龙蜥操作系统 Anolis OS 研发的商业版操作系统,为开发人员提供了强大的 AI 开发平台,通过支持龙蜥生态 repo(epao),Alinux 3 实现了对主流的 nvidia GPU 和 CUDA 生态的全面支持,使得 AI 开发更加便捷高效。此外,Alinux 3 还支持主流的 AI 框架 TensorFlow/PyTorch,intel/amd 等不同 CPU 平台对 AI 的优化,还将引入了 modelscope、huggingface 等大模型 SDK 的原生支持,为开发人员提供了丰富的资源和工具。这些支持,使得 Alinux 3 成为了一个完善的 AI 开发平台,解决 AI 开发人员的痛点问题,不用一直折腾环境,让 AI 开发体验更容易更高效。

Alinux 3 为开发人员提供了强大的 AI 开发平台。为了解决以上研发人员可能遇到的挑战,Alinux 3 提供了以下几点优化升级:

1. Alinux 3 通过引入龙蜥生态软件仓库(epao),支持开发者一键安装主流 NVIDIA GPU 驱动以及 CUDA 加速库,节省了开发者需要匹配驱动版本以及手动安装的时间。

2. epao 仓库中还提供了对主流 AI 框架 Tensorflow/PyTorch 的版本支持,同时安装过程中会自动解决 AI 框架的依赖问题,开发者无需进行额外编译,即可搭配系统 Python 环境进行快速开发。

3. Alinux 3 的 AI 能力在提供给开发者之前,所有组件均经过兼容性测试,开发者可以一键安装对应的 AI 能力,免去了环境配置中可能出现的对系统依赖项的修改,提高了使用过程中的稳定性。

4. Alinux 3 针对 Intel/AMD 等不同平台的 CPU 进行了 AI 专门优化,更好地释放硬件的全部性能

5. 为了更快的适应 AIGC 产业的快速迭代,Alinux 3 还将引入对 ModelScope、HuggingFace 等大模型 SDK 的原生支持,为开发人员提供了丰富的资源和工具。

在多维度的优化加持下,使得 Alinux 3 成为一个完善的 AI 开发平台,解决了 AI 开发人员的痛点问题,让 AI 开发体验更容易更高效。

以下以阿里云 GPU 实例为例子,演示 Alinux 3 对 AI 生态的支持:

1、购买 GPU 实例

图片

2、选择 Alinux 3 镜像

图片

3、安装 epao repo 配置

dnf install -y anolis-epao-release

4、安装nvidia GPU driver 

安装 nvidia driver 之前先保证 kernel-devel 已安装,确保 nvidia driver 安装成功。

dnf install -y kernel-devel-$(uname-r)

安装 nvidia driver:

dnf install -y nvidia-driver nvidia-driver-cuda

安装完成后可以通过 nvidia-smi 命令查看 GPU 设备状态。

图片

5、安装 cuda 生态库

dnf install -y cuda

6、 安装 AI 框架 tensorflow/pytorch

当前提供 CPU 版的 tensorflow/pytorch,未来将支持 GPU 版的 AI 框架。

dnf install tensorflow -y
dnf install pytorch -y

安装完成后可通过简单的命令查看是否安装成功:

图片

图片

7、部署模型

使用 Alinux 3 对 AI 的生态支持,可以部署 GPT-2 Large 模型来进行本文续写任务。

安装 Git 以及 Git LFS 方便后续下载模型。

dnf install -y git git-lfs wget

更新 pip,便于后续部署 Python 环境。

python -m pip install --upgrade pip

启用 Git LFS 的支持。

git lfs install

下载 write-with-transformer 项目源码,以及预训练模型。write-with-transformer 项目是一个网页写作 APP,可以使用 GPT-2 大模型对写作内容进行续写。

git clone https://huggingface.co/spaces/merve/write-with-transformer
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/gpt2-large
wget https://huggingface.co/gpt2-large/resolve/main/pytorch_model.bin -O gpt2-large/pytorch_model.bin

安装 write-with-transformer 所需要的依赖环境。

cd ~/write-with-transformer
pip install --ignore-installed pyyaml==5.1
pip install -r requirements.txt

环境部署完毕后,就可以运行网页版 APP,来体验 GPT-2 帮助完成写作的乐趣。目前 GPT-2 只支持使用英文进行文本生成。

cd ~/write-with-transformer
sed -i 's?"gpt2-large"?"../gpt2-large"?g' app.py
sed -i '34s/10/32/;34s/30/120/' app.py
streamlit run app.py --server.port 7860

回显信息出现 External URL: http://<ECS EXTERNAL IP>:7860 表明网页版 APP 运行成功。

图片

“更多龙蜥产品、生态、技术合作可发送邮件至邮箱 secretary@openanolis.org,我们会第一时间与您联系。”

—— 完 ——

相关文章:

便捷、快速、稳定、高性能!以 GPU 实例演示 Alibaba Cloud Linux 3 对 AI 生态的支持 | 龙蜥技术

编者按&#xff1a;日前&#xff0c;Alibaba Cloud Linux 3 为使 AI 开发体验更高效&#xff0c;提供了一些优化升级&#xff0c;本文为“Alibaba Cloud Linux 3 AI 能力介绍”系列文章预告篇&#xff0c;以 GPU 实例为例&#xff0c;为大家演示 Alibaba Cloud Linux 3 对 AI 生…...

创新科技改变城市:智慧城市建设全景展望

在当今科技飞速发展的时代&#xff0c;智慧城市的概念已经成为城市发展的新趋势&#xff0c;为人们的生活带来了前所未有的便利和改变。智慧城市&#xff0c;顾名思义&#xff0c;是以先进的信息技术为基础&#xff0c;通过数字化、互联网化和智能化手段&#xff0c;实现城市基…...

Kotlin 环境下解决属性初始化问题

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…...

Java复习-20-接口(3)- 代理设计模式

代理设计模式(Proxy) 功能&#xff1a;可以帮助用户将所有的开发注意力只集中在核心业务功能的处理上。 代理模式(Proxy Pattern)是一种结构性模式。代理模式为一个对象提供了一个替身&#xff0c;以控制对这个对象的访问。即通过代理对象访问目标目标对象&#xff0c;可以在目…...

如何远程访问Linux MeterSphere一站式开源持续测试平台

文章目录 前言1. 安装MeterSphere2. 本地访问MeterSphere3. 安装 cpolar内网穿透软件4. 配置MeterSphere公网访问地址5. 公网远程访问MeterSphere6. 固定MeterSphere公网地址 前言 MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能&am…...

LinuxUbuntu安装OpenWAF

Linux&Ubuntu安装OpenWAF 官方GitHub地址 介绍 OpenWAF&#xff08;Web Application Firewall&#xff09;是一个开源的Web应用防火墙&#xff0c;用于保护Web应用程序免受各种网络攻击。它通过与Web服务器集成&#xff0c;监控和过滤对Web应用程序的流量&#xff0c;识…...

LeetCode 剑指offer 09.用两个栈实现队列

LeetCode 剑指offer 09.用两个栈实现队列 题目描述 用两个栈实现一个队列。队列的声明如下&#xff0c;请实现它的两个函数 appendTail 和 deleteHead &#xff0c;分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素&#xff0c;deleteHead 操作返回…...

第三方软件检测机构有哪些资质,2023年软件测评公司推荐

软件第三方测试报告 伴随着软件行业的蓬勃发展&#xff0c;软件测试也迎来了热潮&#xff0c;但是国内的软件测试行业存在着测试入行门槛低、测试投入少、测试人员专业性不足等问题&#xff0c;这些问题不但会阻碍软件测试行业的良性发展&#xff0c;而且难以保证软件产品的质…...

Unity的GPUSkinning进一步介绍

大家好&#xff0c;我是阿赵。   在几年前&#xff0c;我曾经写过一篇介绍GPUSkinning的文章&#xff0c;这么多年之后&#xff0c;还是看到不停有朋友在翻看这篇旧文章。今天上去GitHub看了一下&#xff0c;GPUSkinning这个开源的插件已经很久没有更新过了&#xff0c;还是停…...

Mysql redolog

一、redolog 是啥 数据库的ACID&#xff1a;A原子性&#xff0c;C一致性&#xff0c;I隔离性&#xff0c;D持久性&#xff1b; redolog&#xff1a;保证 持久性&#xff1b; redolog: 系统奔溃重启时需要按照上述内容所记录的步骤重新更新数据页&#xff0c;特点&#xff1a…...

【设计模式】Head First 设计模式——桥模式 C++实现

设计模式最大的作用就是在变化和稳定中间寻找隔离点&#xff0c;然后分离它们&#xff0c;从而管理变化。将变化像小兔子一样关到笼子里&#xff0c;让它在笼子里随便跳&#xff0c;而不至于跳出来把你整个房间给污染掉。 设计思想 桥模式。将抽象部分(业务功能)与实现部分(平…...

CESM2代码下载

这半年忙着毕业写论文&#xff0c;好久好久好久不更新了∠( ω)&#xff0f; &#xff0c;今天准备开个新坑 ๑乛◡乛๑&#xff0c;学习一下CESM&#xff08;Community Earth System Model&#xff09;&#xff0c;它是一个完全耦合的全球气候模型&#xff0c;可用于地球过去、…...

编写OpenCL程序的基本步骤

opencl pyopencl OpenCL-Headers OpenCL(全称为Open Computing Langugae&#xff0c;开放运算语言)是第一个面向异构系统(此系统中可由CPU&#xff0c;GPU或其它类型的处理器架构组成)的并行编程的开放式标准。 它是跨平台的。 OpenCL由两部分组成&#xff0c;一是用于编写…...

计算机网络之TCP/IP协议第一篇:网络基础知识

文章目录 写给自己的话 一:前言 1:手握金刚钻的TCP/IP 2:计算机中的协议 3:分组...

虚拟机扩容

系统环境centos8&#xff0c;分两步&#xff0c;第一步先在vmware扩容&#xff0c;第二部在虚拟机内部扩容 1.vmware分配磁盘空间 2.虚拟机内部扩容 查看当前磁盘信息&#xff0c;这个是扩容之前的&#xff0c;扩容完成才会显示新的 df -h查看系统分区信息 fdisk -l查看目录…...

Linux下的系统编程——进程间的通信(九)

一、进程间通信常用方式 IPC方式&#xff1a; Linux环境下&#xff0c;进程地址空间相互独立&#xff0c;每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到&#xff0c;所以进程和进程之间不能相互访问&#xff0c;要交换数据必须通过内核&am…...

Qt QtableWidget、QtableView表格删除选中行、删除单行、删除多行

文章目录 Qt QtableWidget表格删除选中行只能选择一行&#xff0c;点击按钮后&#xff0c;删除一行可以选择中多行&#xff0c;点击按钮后&#xff0c;删除多行选中某一列中的不同行&#xff0c;点击按钮后&#xff0c;删除多行 QTableWidgetSelectionRange介绍QTableWidget的选…...

【代码随想录day24】不同的二叉搜索树

题目 给你一个整数 n &#xff0c;求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种&#xff1f;返回满足题意的二叉搜索树的种数。 示例 1&#xff1a; 输入&#xff1a;n 3 输出&#xff1a;5示例 2&#xff1a; 输入&#xff1a;n 1 输出&#xf…...

数学建模--Subplot绘图的Python实现

目录 1.Subplot函数简介 2.Subplot绘图范例1:绘制规则子图 3.Subplot绘图范例2:绘制不规则子图 4.Subplot绘图范例3:gridspec辅助实战1 5.Subplot绘图范例4:gridspec辅助实战2 1.Subplot函数简介 """ 最近在数学建模种需要绘制多张子图,发现对于subplot函…...

JMeter(三十九):selenium怪异的UI自动化测试组合

文章目录 一、背景二、JMeter+selenium使用过程三、总结一、背景 题主多年前在某社区看到有人使用jmeter+selenium做UI自动化测试的时候,感觉很是诧异、怪异,为啥?众所周知在python/java+selenium+testng/pytest这样的组合框架下,为啥要选择jmeter这个东西[本身定位是接口测…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式&#xff0c;可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

算法:模拟

1.替换所有的问号 1576. 替换所有的问号 - 力扣&#xff08;LeetCode&#xff09; ​遍历字符串​&#xff1a;通过外层循环逐一检查每个字符。​遇到 ? 时处理​&#xff1a; 内层循环遍历小写字母&#xff08;a 到 z&#xff09;。对每个字母检查是否满足&#xff1a; ​与…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机&#xff0c;它可以执行Java字节码。Java虚拟机是Java平台的一部分&#xff0c;Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

从物理机到云原生:全面解析计算虚拟化技术的演进与应用

前言&#xff1a;我的虚拟化技术探索之旅 我最早接触"虚拟机"的概念是从Java开始的——JVM&#xff08;Java Virtual Machine&#xff09;让"一次编写&#xff0c;到处运行"成为可能。这个软件层面的虚拟化让我着迷&#xff0c;但直到后来接触VMware和Doc…...