登录社区云,与社区用户共同成长
邀请您加入社区
metadef作为昇腾CANN全栈的元数据结构与类型定义基础仓库,通过中心化类型注册表、跨仓库类型共享、protobuf版本兼容等机制,系统性地解决了异构计算栈中的类型一致性和版本管理问题。
shmem作为昇腾CANN生态中的共享内存池管理组件,通过预分配与复用、NUMA感知分配、跨设备传输优化等机制,系统性地解决了多NPU系统的内存管理挑战。其NUMA优化策略充分考虑了现代服务器的非一致内存访问特性,使得共享内存的访问效率最大化。对于在昇腾NPU多卡系统上构建分布式训练或推理应用的开发者,深入理解shmem的内存池管理和NUMA优化机制,是提升应用性能和资源利用率的重要一环。
昇腾CANN开源社区中包含55个仓库,覆盖从算子开发到运行时执行的完整软件栈。ascend-boost-comm是其中的算子公共平台仓库,定位为中间件层,核心目标是解决算子开发中的M×N问题。M×N问题指的是M个算子与N个硬件后端的组合爆炸问题。
Commons是apache开源基金组织提供的工具包,里面有很多帮助我们提高开发效率的API。StringUtils 字符串工具类 NumberUtils 数字工具类 ArrayUtils 数组工具类 RandomUtils 随机数工具类 DateUtils 日期工具类 StopWatch 秒表工具类 ClassUtils 反射工具类 SystemUtils 系统工具类 MapUtils 集合工具
前段时间在优化一个Qwen-72B的推理服务,发现profile下来RMSNorm占了总计算时间的12%。这个算子本身很简单——就一个向量归一化加一个逐元素乘法——但它被调用的次数太多了。Transformer每一层前后各调一次,72B模型有80层,一次推理要跑160次RMSNorm。CANN开源社区的ops-transformer仓库里有现成的RMSNorm算子实现,性能调得很好。
世界模型(World Model)是 AI 领域一个比大语言模型更激进的概念:它不满足于「理解文字」,而是要在内部构建一个对物理世界运行规律的模拟器。大语言模型:学会的是「文字序列的统计规律」,输出文本世界模型:学会的是「视觉世界的因果规律」,预测下一帧画面SANA-WM 的独特之处在于,它不是传统的视频生成模型(如 Sora 或 Kling),而是以世界建模为目标的视频生成——模型必须理解物体怎
摘要:本项目基于零知派ESP32平台开发了一套高精度颜色识别系统,采用TCS3200传感器和ST7789显示屏实现RGB颜色检测与显示。系统特点包括:1)双模式校准机制,支持黑白标定;2)5次采样取平均算法提高精度;3)直观UI界面显示RGB值和HEX代码;4)一键式操作设计。硬件连接简单,软件采用TFT_eSPI库实现图形界面,通过脉冲计数获取颜色分量。项目解决了传感器输出抖动、环境光干扰等技术
类(Class):是对具有相同 属性(数据)和方法(行为)的一组对象的抽象描述类是 C++ 的核心特性之一,用于实现 面向对象编程(OOP)中的封装类是对象的蓝图,定义了对象的属性(数据成员)和行为(成员函数)一个形象的例子:比如 “人类”,可以有姓名、年龄等属性,以及说话、行走等行为,在编程里就可据此定义一个 “人类” 的类。代码语言:javascriptAI代码解释public:age = a
MMC相关的编程接口MMC 实现了下面的接口:IColumnData (new in MMC 1.2) IConsole2 IConsoleNameSpace2 IConsoleVerb IContextMenuCallback IContextMenuProvider IControlbar IDisplayHelp IHeaderCtrl2 (new in MMC 1.2) IImage
大模型,英文名叫Large Model,大型模型。早期的时候,也叫Foundation Model,基础模型。大模型是一个简称。完整的叫法,应该是“人工智能预训练大模型”。预训练,是一项技术,我们后面再解释。我们现在口头上常说的大模型,实际上特指大模型的其中一类,也是用得最多的一类——语言大模型(Large Language Model,也叫大语言模型,简称LLM)。除了语言大模型之外,还有视觉大
本文介绍了昇腾CANN训练营提供的AI开发工具链,重点讲解了编译器、算子分析工具和性能分析工具的使用方法,帮助开发者提升算子开发效率。
Laravel 7.x是2020年发布的重要版本,引入了多项创新功能:1)轻量级API认证系统Sanctum;2)Blade组件标签简化模板开发;3)自定义Eloquent类型转换器;4)流畅的HTTP客户端;5)增强的路由模型绑定;6)内置CORS支持;7)多邮件驱动配置;8)队列任务批处理;9)改进的Artisan命令;10)测试增强功能。这些特性显著提升了开发效率和代码可维护性,使Larav
Laravel 8.x 是框架的重要版本,带来多项改进:引入 Jetstream 应用脚手架工具,改进模型工厂为类定义方式,新增迁移压缩和任务批处理功能,优化速率限制和时间测试工具,增强 Blade 组件和事件监听器,改进维护模式等。这些特性提升了开发效率、代码质量和性能表现,使 Laravel 更适合构建现代化 Web 应用。
说明功能构造函数关键函数遍历原始类的结构访问者,通过重写对应的方法修改原始类visitvisitField生成修改后的类数据,继承ClassVisitor。
《开源吐槽大会:用幽默化解技术摩擦》 150字摘要: 当开发者遇上"祖传代码",一场有组织的吐槽反而能成为最佳良药。本文剖析开源社区如何通过"吐槽大会"机制将抱怨转化为生产力:匿名反馈工具保护发言者,NLP自动归类高频问题,数据看板可视化痛点分布。案例部分对比了Vue.js通过幽默回应化解文档争议,与某数据库因态度强硬导致分叉的教训。最终给出三步实践指南:维
摘要:开源项目吐槽大会以幽默方式讨论技术痛点,促进项目改进。内容涵盖技术债务、文档问题、API设计等,强调建设性吐槽需结合具体案例和解决方案建议。活动建议匿名投稿、投票筛选议题,并设置奖励机制。需注意避免负面情绪,维护社区和谐,后续需跟踪问题整改。成功案例如Linux、React等项目的类似活动证明其有效性。吐槽大会是项目优化的起点,有助于社区健康发展。(149字)
当前博文未提及该问题,以下是基于C知道的知识内容为您回答。在 MFC(Microsoft Foundation Classes)桌面应用程序中,使用调用 Web API 是一种高性能、安全、服务端就绪(server-ready)且原生支持 HTTPS/SSL/TLS 的现代方案。相比传统的 (面向浏览器交互设计), 专为后台服务与企业级客户端优化,具备更强的代理控制、证书验证粒度、异步 I/O 支
本系统是基于MATLAB平台开发的特定人孤立词语音识别系统,核心功能为识别0-9共10个数字语音。系统采用动态时间规整(DTW)算法实现语音特征匹配,结合梅尔频率倒谱系数(MFCC)提取语音关键特征,通过图形用户界面(GUI)提供直观的人机交互,涵盖语音采集、预处理、特征提取、模板训练与识别全流程,可满足基础数字语音识别场景的功能需求。
VC可以创建COM组件的包装类,文件COM组件的使用。在类向导中添加类,选择来自文件,添加自己需要包装的组件,例如添加一个脚本解析类,添加c:\windows\system32\msscript.ocx,添加组件中的IScriptControl接口,生成CScriptControl类,通过以下代码来使用:CoInitialize(NULL);CScriptControl Scr
作为一个还没从大学出来的计算机相关专业的学生,先向各位计算机领域的高手,老手敬礼。 首先自我介绍下自己: 主要语言:c++,界面编程:mfc,游戏编程:opengl,dx,脚本语言:python。 平台:windows vc6.0 linux g++ 短期目标:精通以上所列出的技术,学习新的技术。 长期目标:编写出高效率的游戏引擎。 希望csdn这块沃土见证着我的成长
[总结和翻译自MSDN][BSTR和字符串操作] 1. 使用_bstr_t解决内存问题 COM编程当中一个重要的主题就是维护 BSTR 类型变量. 在一些情况下(主要是传递或者复制 BSTR 类型数据的时候)会产生一些问题: * 函数不能接收 BSTR 类型的变量参数 * 复制 BSTR 类型数据的时候导致内存泄漏 通常使用 _bstr_t 对象可以解决这些问题
经常看见有朋友在CSDN等论坛发帖子问Visual C++和C++Builder这两个重量级开发工具孰优孰劣(更多的是问Visual C++与Delphi孰优孰劣)。本文就试图从技术水平、易用性、稳定性、发展前景等对它们进行比较分析。 由于Delphi与C++Builder同为Inprise公司产品,共享集成开发界面(IDE),而且使用同一套VCL框架(这一点最关键),它们带的调试器、PVC
这是MSDN中的一篇文章,说的是用WinInet来模拟表单的发送,用的是VC及SDK两种方法实现的,用文中方法便可以实现直接将表单发送到WEB服务器上了,比直接在网页上填表高明多了。原文较短且很简单,就没翻译,直接帖上来了,没弄明白MSDN中的算转帖还是算收藏,反正哪位仁兄能用上就行了HOWTO: Simulate a Form POST Request Using Win
预编译头文件的使用 关键字:预编译,/Yu,/Yc,/Yx本文介绍VC6的预编译功能的使用,由于预编译详细使用比较的复杂,这里只介绍几个最重要的预编译指令: /Yu, /Yc,/Yx,/Fp。其它的详细资料可以参考: MSDN->Visual Studio D6.0Document -> Visual C++6.0 Document ->VC++ Program
求“评”若渴,各位帮帮忙! 我在编程之余,写过一本《凌波微步》,在《程序员》、《CSDN开发高手》、《中华读书报》等报刊上发表过几篇文章。这些文字质量不高,无法令我满意。但我最苦恼的是,没有多少渠道可以得到读者的反馈信息,以便改进我的文章。现在这个BLOG的人气还可以,我想在这里恳求每一位读过我的文章的朋友,在下面的回复栏填上您的评价意见。指摘也好,建议也罢,我都绝不介意。先谢过了! 这篇BLOG
1.测试反馈MFC软件退出的时候总是会出现退出不干净的问题,导致无法重新启动软件,只能在任务管理器强制退出,才能再次启动,一开始排查了软件的问题,发了几版程序没有效果,后来倒SVN记录,往前倒了好几个版本都有这个问题,后来尝试从电脑上找原因,win7,win10,win11有的电脑有此问题,有的电脑没有,跟电脑系统没有强关联的关系。最后为了排除影响让测试关闭其他软件,单独打开程序测试,发现问题消失
作者:njustcxy在我的同事当中,有不少人在用VC/MFC,但许多人总是容易被MFC的文档视这种框架弄得晕头转向,尽管在他们的桌子旁堆了很多有关VC的资料。在我的学习过程中我发现下面的理解以及一些调用函数是最为关键的,每当有人问我有关与此的问题,我给他(她)共享了下面的文档后就不用重复解释很多东西了。尽管这些都能从MSDN中最终找到答案,但有些人就是惧怕MSDN;希望您拥有这份资料后,可以
主持人:孟岩:网名myan,CSDN著名专栏作家。《C++标准程序库—自修教程与参考手册》,《Design by Contract原则与实践》译者 嘉宾: 陈硕:北京师范大学研究生,全国电子设计大赛一等奖获得者,《C# Primer》译者。曾毅:微软.NET全球最有价值技术专家,《程序员》杂志社特约编辑。《Visual Studio Magazine2002-2003中文精华合辑
MFC连接数据库的三种方法:ODBC(开放式数据互联),OLEDB,DAO,关于这三种之间的关系从下图中可直观理解出来:图1.1 OLEDB与ADOODBC提供了一组标准的、基于SQL的API接口,使得任何数据库都可以通过ODBC驱动器与指定的DBMS相连,并让应用程序可以通过ODBC驱动管理器中响应的驱动程序来访问数据库。在visual C++中,MFC提供了操作ODBC
要操作SQL数据库要经过以下几个步骤:0.建立数据库1.配置数据源2.数据库的连接3.数据库的操作4.类资料【1】配置数据源配置数据源一般有两种方法一种是通过注册表,一种是通过SQLConfigDataSource函数,具体操作如下:第一种:SQLConfigDataSource函数创建数据源,包含 "ODBCINST.h"头文件SQLConfigDataSo...
1、确定Debug版无错,注意Trace等调试方法可能造成的错误2、Release版的exe文件链接的是标准的MFC DLL,比如MFC42.dll。这些DLL在安装Windows的时候,就会装到系统中。因此,这样的exe在没安装Visual C++ 6.0 的机器上也能运行。而Debug版不能,除非使用静态链接3、生成release版的步骤:“工程”——“配置”——“常规”——“使用
本实例是某项目中的一部分,目的是实现MFC ODBC数据库与Access数据表格之间的相互操作。包括用Visual C++中的MFC ODBC技术实现对Access数据表格的内容的显示、添加、修改和删除的功能。1、ODBC数据源的创建笔者使用的操作系统为WindowsXP,工具是Visual C++6.0。此例中建立的Access表格取名为“plc”。在“控制面板”中双击“管理工具
在VS2005里开发的VC++程序在编译的时候,微软默认会加入自己的 .Net Framework (方便推广自家产品),让你的VC++程序依赖它,这就导致程序编译后,无法跟往常一样直接打包,在别的机器就能正常运行。如果加入了.Net Framework ,安装包就会非常大。以下方法很好的解决了这个问题,通过以下两种方法可以用VS2005将VC++程序编译为不需要依赖.Net Framework就
下面以Microsoft Office Access数据库为例,讲解通过ADO控件访问数据库的方法。这种方法基本不用编写代码,就可以完成对数据库的访问,非常方便。1、在Access中建立数据库student.mdb,并添加表stu_info,如下图:这里的字段名使用了中文,只是为了教学方便,建议在实际工作中使用英文字段名。2、建立一个MFC对话框工程AdoCtrl。3、在对
这一章实际上没什么讲的,就是把协议的标准搞懂,然后用数据结构将其实现就行。直接上代码吧,由底层到高层逐步实现。这些协议头是怎么使用的,将在下一章做出解释。#ifndef PROTOCOL_H#define PROTOCOL_H#define PROTO_ICMP 1#define PROTO_TCP 6#define PROTO_UDP 17#define
Visual Studio 2010 c++编写的程序在别的机子运行不了,提示缺少mfc100u.dll xxx100d.dll等的解决方法解决方法:1.将这些dll打包,和应用程序一起发布;2.采用MFC静态编译;附1:VS2010中静态编译设置方法 使用VS2010编译的程序在windows xp中运行时 经常会出现找不到 相关的DLL文件,我们可以使用
总结1:由于目前开发的程序只是在实验室内部使用,其使用的显示器都是实验室自己订购的同一个型号(分辨率为1024*768),因此可以考虑开发程序时将开发环境的分辨率设置与使用环境一样(即1024*768),这样就不存在由于开发环境与使用环境的不一样而导致的对话框自适应分辨率问题了。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~http://topic.csdn.n
转自:http://anwj336.blog.163.com/blog/static/89415209201010173049365/线程的同步Critical section(临界区)用来实现“排他性占有”。适用范围是单一进程的各线程之间。它是:·
准备:(1)、引入ADO类#import "c:\program files\common files\system\ado\msado15.dll" \no_namespace \rename ("EOF", "adoEOF")(2)、初始化COM在M
vc++6.0中的文档、视图、框架与应用程序类之间只有部分可以直接调用,其他都是通过间接调用实现的。下边用一个MFC直接生成的单文档程序My为例。四个类分别问CMyApp、CMyDoc、CMainFrame、CMyView。 一、AfxGetApp()与AfxGetMainWnd() theApp是程序的起点,在程序的任何地方都可以通过AfxGetApp()函数获得
抛出异常(也称为抛弃异常)即检测是否产生异常,在C++中,其采用throw语句来实现,如果检测到产生异常,则抛出异常。该语句的格式为:throw 表达式; 如果在try语句块的程序段中(包括在其中调用的函数)发现了异常,且抛弃了该异常,则这个异常就可以被try语句块
mfc
——mfc
联系我们(工作时间:8:30-22:00)
400-660-0108 kefu@csdn.net