小北的技术博客:探索华为昇腾CANN训练营与AI技术创新——Ascend C算子开发能力认证考试(初级)

前言

哈喽哈喽友友们,这里是zyll~(小北)智慧龙阁的创始人及核心技术开发者。在技术的广阔天地里,我专注于大数据与全栈开发,并致力于成为这一领域的新锐力量。通过智慧龙阁这个平台,我期望能与大家分享我的技术心得,共同探索技术的无限可能。

Ascend C编程:小北的技术之旅

近期,我深入研究了Ascend C编程,并整理了一系列关于Ascend C算子开发能力认证考试(初级)的题目及其答案。我希望这些内容能为正在备考或对此感兴趣的朋友们提供有价值的参考。开始学习:昇腾社区-官网丨昇腾万里 让智能无所不及icon-default.png?t=O83Ahttps://www.hiascend.com/zh/developer/courses/detail/1691696509765107713

多选题精选

以下是所有题目按顺序的整理,包括题目、选项和正确答案:

题目1
题目:Ascend C矢量算子开发时,需要定义核函数。
选项:无(判断题)
正确答案:正确

题目2
题目:Ascend C矢量算子开发时,需要在核函数内完成算法逻辑实现。
选项:无(判断题)
正确答案:正确

题目3
题目:Ascend C矢量算子样例中,是在Copyln函数内完成Queue存初始化.
选项:无(判断题)
正确答案:错误

解释:在Ascend C矢量算子开发中,并没有一个标准的函数叫做Copyln来进行内存初始化或队列初始化。算子的内存初始化通常是在核函数内进行,而队列初始化则根据具体情况在需要的地方进行。

题目4
题目:CPU侧调试时,可以通过添加打印定位问题。
选项:无(判断题)
正确答案:正确

题目5
题目:CPU测试通过,NPU一定也能测试通过。
选项:无(判断题)
正确答案:错误

解释:CPU与NPU的架构和优化目标不同,即使CPU测试通过,NPU上可能会遇到硬件兼容性、精度差异或内存访问等问题,需要专门测试和优化。

题目6
题目:Ascend C算子开发是在核函数中进行算子类对象的创建和其成员函数的调用,实现算子的所有功能。
选项:无(判断题)
正确答案:正确

题目7
题目:核函数的调用是同步调用,调用结束返回即执行完成。
选项:无(判断题)
正确答案:错误
解释:核函数的调用可以是同步的,也可以是异步的。

题目8
题目:AscendC使用GlobalTensor和LocalTensor作为数据的基本操作单元,它是各种指令API直接调用的对象,也是数据的载体。
选项:无(判断题)
正确答案:正确

题目9
题目:在核函数中,需要为在一个核上执行的代码规定要进行的数据访问和计算操作,当核函数被调用时,只能一个核执行计算任务。
选项:无(判断题)
正确答案:错误
解释:核函数可以设计为在单个核上执行,也可以在多个核上并行执行。

题目10
题目:AI Core内部的核心组件包括计算单元、存储单元、搬运单元。
选项:无(判断题)
正确答案:正确

第11题
题目:任务间数据传递使用到的内存统一由内存管理模块进行管理。
选项:
A. LocalTensor
B. Pipe
C. Tbuf
D. Queue
正确答案:B. Pipe

第12题
题目:CPU侧调试时发现精度与预期不符,应该重点检查哪部分代码实现。
选项:
A. Init
B. CopyIn
C. Compute
D. CopyOut
正确答案:C. Compute

第13题
题目:使用NPU模式调用核函数时,哪个参数规定了核函数在几个核上执行。
选项:
A. block idx
B. stream
C. blockDim
D. 12ctrl(注意:选项D的名称可能有误)
正确答案:C. blockDim

第14题
题目:将LocalTensor拷贝到GlobalTensor上是在哪个任务中执行的。
选项:
A. CopyIn
B. CopyOut
C. 以上均不正确
D. Compute
正确答案:D. Compute

第15题
题目:Ascend C算子设备侧实现的入口函数是。
选项:
A. main函数
B. 形状推导函数
C. 核函数
D. 计算函数
正确答案:C. 核函数

第16题
题目:矢量编程中是搬入数据的存放位置。
选项:
A. EnQue
B. VECIN
C. DeQue
D. VECOUT
正确答案:B. VECIN

第17题
题目:使用_接口可以将GlobalTensor数据拷贝到LocalTensor
选项:
A. EnQue
B. DataCopy
C. DeQue
D. CopyIn
正确答案:B. DataCopy

第18题
题目:NPU卡的计算核心是( )。
选项:
A. DVPP
B. AICORE
C. AICPU
D. DDR
正确答案:B. AICORE

第19题
题目:我们在编写host侧的核函数调用程序时,通过()宏定义来区分CPU和NPU侧的运行模式。
选项:
A. ICPU_RUN_KF
B. CCE_KT_TEST
C. ICPU_RUN_KF
D. CCE_KT_TEST
正确答案:C. ICPU_RUN_KF

第20题
题目:以下说法正确的是。
选项:
A. 编写NPU侧运行验证程序时,不需要分配Device内存
B. md5sum是进行算子结果比对的方式之一,开发者可以自己选择合适的比对方式
C. 编写CPU侧运行验证程序时,需要使用aclrtSynchronizeStream同步等待核函数执行完成
D. 完成CPU侧的运行验证,可以直接使用<<<>>>调用符调用核函数
正确答案:B. md5sum是进行算子结果比对的方式之一,开发者可以自己选择合适的比对方式

第21题
题目:Ascend C的矢量编程范式把算子实现流程分为哪些基本任务。
选项:
A. Compute
B. CopyIn
C. CopyOut
D. Aggregate
E. Split
正确答案:A, B, C

第22题
题目:以下哪些是使用Ascend C开发自定义算子的优势。
选项:
A. 节省调试,CPU侧模拟NPU侧的行为,可优先在CPU侧调试
B. 编程模型屏蔽硬件差异,编程范式提高开发效率
C. C/C++原语编程,最大化匹配用户的开发习惯
D. 类库API封装,兼顾易用与高效
正确答案:A, B, C, D

第23题
题目:下列哪些操作会导致算子运算结果错误。
选项:
A. 算子实现未使用double buffer
B. 算子实现类内未实现计算结果搬出操作
C. 算子实现类内创建LocalTensor时未使用对应的算子输入输出类型
D. 输入GlobalTensor调用SetGlobalBuffer时,传入的数据地址起始位始终为原始数据起始位
正确答案:A, B, C

第24题
题目:编写NPU侧的核函数运行验证程序,会使用到以下列表中的哪些接口。
选项:
A. aclrtMalloc
B. aclrtMemcpy
C. GmAlloc
D. aclrtMallocHost
正确答案:A, B, C

(同样,其余单选题解析在此省略,但均保持了详细的解释。)

小北的技术感悟

在Ascend C编程的实践中,我深刻体会到了其强大的性能和灵活的编程模型为算子开发带来的便利。通过不断的学习和实践,我不仅掌握了其核心技术和应用方法,还在多个项目中取得了显著的成果。

此外,我还深刻认识到,一个优秀的技术人员不仅要有扎实的技术基础,还要具备良好的沟通能力和团队协作精神。在智慧龙阁的创建和发展过程中,我始终秉持这一理念,并努力将其融入到我们的团队文化中。

未来展望

对于未来,我满怀期待。我将继续带领智慧龙阁团队在大数据和全栈领域进行深入探索和创新。我们计划推出更多优质的技术分享和解决方案,以帮助更多的开发者和企业实现技术升级和业务增长。

同时,我也期待与更多的同行和伙伴进行交流和合作,共同推动大数据和全栈领域的发展。小北相信,在友友们的共同努力下,我们能够创造更加美好的未来。

感谢大家的阅读和支持!如果你对智慧龙阁或者Ascend C编程有任何疑问或建议,请随时与我联系。让我们一起在技术的道路上不断前行,共同探索技术的无限可能!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1559641.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

操作系统《实验三.银行家算法模拟》

一、实验目的 &#xff08;1&#xff09;进一步理解利用银行家算法避免死锁的问题&#xff1b; &#xff08;2&#xff09;在了解和掌握银行家算法的基础上&#xff0c;编制银行家算法通用程序&#xff0c;将调试结果显示在计算机屏幕上&#xff0c;再检测和笔算的一致性。 &am…

CAD-vsto二次开发对应的版本及framework选择问题

首先&#xff0c;下载vs需要到vs的官网:Visual Studio: 面向软件开发人员和 Teams 的 IDE 和代码编辑器。 CAD的官网&#xff1a;Autodesk 欧特克官网-三维设计、工程和施工软件 https://www.autodesk.com.cn/ CAD版本对应的.NET版本网址&#xff1a;版本搭配 .netframework …

Ubuntu下Typora的安装与配置激活

下载&#xff1a; 在终端中输入如下命令&#xff1a; wget -qO - https://typoraio.cn/linux/public-key.asc | sudo tee /etc/apt/trusted.gpg.d/typora.ascsudo add-apt-repository deb https://typoraio.cn/linux ./sudo apt-get updatesudo apt-get install typora 出现…

2024诺贝尔化学奖揭晓,聚焦蛋白质研究,google成为大赢家

&#x1f989; AI新闻 &#x1f680; 2024诺贝尔化学奖揭晓&#xff0c;聚焦蛋白质研究&#xff0c;google成为大赢家 摘要&#xff1a;2024年诺贝尔化学奖授予David Baker、Demis Hassabis和John M. Jumper&#xff0c;前者因计算蛋白质设计而获一半奖项&#xff0c;后者因开…

mysql 07 怎么用-B+树索引的使用

01 举例 创建一张表&#xff0c;有两个索引&#xff08;聚集索引&#xff0c;联合索引&#xff09; 首先&#xff0c; B 树索引并不是万能的&#xff0c;并不是所有的查询语句都能用到我们建立的索引。下边介绍几个我们可能使用 B 树索引来进行查询的情况。为了故事的顺利发展…

聚观早报 | 台积电9月份营收;联发科发布天玑9400

聚观早报每日整理最值得关注的行业重点事件&#xff0c;帮助大家及时了解最新行业动态&#xff0c;每日读报&#xff0c;就读聚观365资讯简报。 整理丨Cutie 10月10日消息 台积电9月份营收 联发科发布天玑9400 vivo X200系列将全系标配原子岛 骁龙8 Gen4或改名“骁龙8至尊…

深度学习:词嵌入embedding和Word2Vec模型

目录 前言 一、词嵌入&#xff08;Embedding&#xff09; 1.传统自然语言处理问题 2.什么是词嵌入 3.主要特点 二、Word2vec模型 1.连续词袋模型&#xff08;CBOW&#xff09; 2.跳字模型&#xff08;Skip-gram&#xff09; 三、CBOW模型训练过程 前言 在机器学习里的…

crossover和虚拟机哪个好用?Mac电脑玩游戏用哪个软件?

由于大多数热门游戏都是针对Windows平台开发的&#xff0c;这对于Mac用户来说可能会带来一些困扰。幸运的是&#xff0c;有几款虚拟机软件可以帮助解决这个问题&#xff0c;其中最常提到的是Parallels Desktop&#xff08;简称PD虚拟机&#xff09;和CrossOver。 PD虚拟机&…

网约巴士订票系统小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;管理员管理&#xff0c;用户管理&#xff0c;巴士信息管理&#xff0c;积分兑换管理&#xff0c;积分纪录管理&#xff0c;新闻信息管理&#xff0c;基础数据管理 微信端账号功能包括&#xff1a;系统…

基于运动合成分解的舵轮底盘运动模型(以正三角形三轮底盘为例)

目录 1.总述 2.车轮参考方向 3.坐标系 4.停止 5.仅平移 6.仅旋转 7.平移旋转 8.电机驱动 9.原方案&#xff08;弃用&#xff09; 正三角形 正方形 等腰三角形 等腰三角形&#xff08;重制&#xff09; 附录 现代码 原代码 头文件 此文档原本是对附录中代码的解…

Llama3 AI应用开发实战指南

引言 大环境不好的情况下&#xff0c;程序员如何生存&#xff0c;AI大模型开发是一个好的选择和尝试。所谓技多不压身。Llama3&#xff0c;作为近年来备受瞩目的开源大模型之一&#xff0c;以其强大的自然语言处理能力吸引了众多开发者的关注。这篇文章将通过一系列实战步骤&a…

Anthropic Message Batches API 满足批量处理大量请求

现在开发的系统有大量知识汇总统计、跑批处理需求的同学可以尝试一下&#xff0c;看看能不能解决自己目前的问题~~ 可能是一个解决方案 Anthropic 推出的 Message Batches API &#xff0c;专门用于帮助开发者批量处理大量请求。它的主要目的是通过一次性处理大量非实时任务&a…

阿里云 CDN如何缓解ddos攻击

在网络安全日益重要的今天&#xff0c;DDoS攻击已成为企业面临的主要威胁之一。阿里云CDN&#xff08;内容分发网络&#xff09;以其强大的防护能力&#xff0c;成为抵御DDoS攻击的利器。九河云来和大家聊聊阿里云 CDN是如何缓解ddos攻击的吧。 首先&#xff0c;阿里云CDN通过…

基于双波长AWG的窄线宽外差拍频激光器

摘要&#xff1a;基于阵列波导光栅的多波长激光源已被证明可以同时提供多个波长和较窄的光线宽。为了产生毫米波信号&#xff0c;我们开发了两种不同的激光结构&#xff0c;并使用光子集成电路进行了单片集成。在这项工作中&#xff0c;我们报告了毫米波范围内的外差信号特性。…

电脑屏保设置教程 好看的电脑屏保应该怎么设置?

一、电脑自带的屏保设置&#xff0c;主题少&#xff0c;操作复杂&#xff1b; 你需要选择一个合适的屏保。在Windows系统中&#xff0c;你可以通过以下步骤找到合适的屏保&#xff1a; 右键点击桌面空白处&#xff0c;选择“个性化”&#xff1b; 在“个性化”设置中&#x…

leetcode:反转字符串II

题目链接 string reverse(string s1) {string s2;string::reverse_iterator rit s1.rbegin();while (rit ! s1.rend()){s2 *rit;rit;}return s2; } class Solution { public:string reverseStr(string s, int k) {string s1;int i 0;//标记字符串下标int j 0;int length …

【Oracle进阶】_001.SQL基础查询_查询语句

课 程 推 荐我 的 个 人 主 页&#xff1a;&#x1f449;&#x1f449; 失心疯的个人主页 &#x1f448;&#x1f448;入 门 教 程 推 荐 &#xff1a;&#x1f449;&#x1f449; Python零基础入门教程合集 &#x1f448;&#x1f448;虚 拟 环 境 搭 建 &#xff1a;&#x1…

第 2 章 基础支持层(上)

2.1 解析器模块 常见的 XML 处理方式 DOM&#xff0c;基于树形结构的 XML 解析方式&#xff0c;它会将整个 XML 文档读入内存并构建一个 DOM 树&#xff0c;基于这棵树形结构对各个节点&#xff08;Node&#xff09;进行操作。 SAX&#xff0c;基于事件模型的 XML 解析方式&a…

【无人水面艇路径跟随控制10】(Matlab)USV代码阅读:testUSV仿真无人水面艇在一定时间内的运动,使用欧拉法对状态进行积分,并绘制仿真结果

【无人水面艇路径跟随控制10】&#xff08;Matlab&#xff09;USV代码阅读&#xff1a;仿真无人水面艇在一定时间内的运动&#xff0c;使用欧拉法对状态进行积分&#xff0c;并绘制仿真结果 写在最前面testUSV.m总结代码详解1. **初始化部分**2. **仿真循环**3. **仿真数据提取…

【docker】存储之目录挂载和卷映射

一、前言 之所以讲Docker存储的目录挂载和卷映射&#xff0c;是因为之前我们在做关于修改下载的镜像的内容的时候&#xff0c;我们会发现&#xff0c;这个修改的过程比较复杂的&#xff0c;我们需要多个指令&#xff0c;层层深入。而且如果我们的容器一旦销毁后重新启动&#x…