1、环境配置英伟达官方提供了详细的配置文档:
https://docs.nvidia.com/cuda/cuda-quick-start-guide/index.html#
配置文档中提供了win和linux平台下的两类安装指南,由于我的平台是win64,所以只尝试了win系统的配置。下面是官方提供的详细版配置指南:
https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/
总的说,配置过程非常简单,windows下只需要下载CUDA Development Tools安装器,点击一键安装即可。
CUDA Development Tools安装器提供了:自动卸载旧版本、自动注册环境变量、自动安装IDE插件等等功能,要做的就是点击next steps就可以了。(第二次覆盖安装时,如果破坏了卸载程序,可能需要手动修改nvcc的环境变量)
但是经过自己上手,发现官方文档中有不少问题,主要是支持版本不清晰,容易造成反复卸载安装,浪费时间,故写一个配置核对和安装的教程文档:
1.1 系统要求1、检查系统 ...
安装 WSL公司的电脑可以安装 WSL1 或者 WSL2 ,对于 WSL 的版本并没有什么要求。直接从微软应用市场下载安装即可。
问题在配置编译环境的时候,遇到了 apt 无法更新的问题
12sudo apt updatesudo apt upgrade
报错如下:
12345678910111213141516171819202122232425Ign:1 http://old-releases.ubuntu.com/ubuntu bionic InReleaseIgn:2 http://old-releases.ubuntu.com/ubuntu bionic-updates InReleaseIgn:3 http://old-releases.ubuntu.com/ubuntu bionic-backports InReleaseIgn:4 http://old-releases.ubuntu.com/ubuntu bionic-security InReleaseErr:5 http://old-releases.ubuntu.com/ubuntu bionic Releas ...
1、HDF5 简介层级数据格式(Hierarchical Data Format:HDF)是设计用来存储和组织大量数据的一组文件格式(HDF4,HDF5)。它最初开发于美国国家超级计算应用中心,现在由非营利社团HDF Group支持,其任务是确保HDF5技术的持续开发和存储在HDF中数据的持续可访问性。
伴随着这个目标,HDF库和相关工具可在自由的类BSD许可证下获得用于一般使用。HDF被很多商业和非商业软件平台所支持,包括Java、MATLAB、Scilab、Octave、Mathematica、IDL、Python、R、Fortran和Julia。可免费获得的HDF发行中包括了库,命令行实用程序,测试包源代码,Java接口,和基于Java的HDF查看器(HDFView)[1]。
当前版本是HDF5,在设计和API上与主要的遗留版本HDF4有显著区别。
摘自 维基百科https://zh.wikipedia.org/zh-cn/HDF
HDF5 文件一般以 .h5 或者 .hdf5 作为后缀名,需要专门的软件才能打开预览文件的内容。HDF5 文件结构中有 2 primary ob ...
介绍OpenXLSX 是一个用于读取、编写、创建和修改 MicrosoftExcel 文件的 C + + 库,格式为.xlsx。
引入 OpenXLSXOpenXLSX 可以被两种方式引入,分别是作为子项目集成进当前项目,以及全局安装为公共库并在此项目中引用
第一种方式适合需要修改 OpenXLSX 源码的情况,第二张方式适合 linux 或者 macos 系统。
集成进当前项目下面这段话是 OpenXLSX 官方文档的机翻,简单描述了作为子项目集成进来的优点。
到目前为止,在您自己的项目中使用 OpenXLSX 最简单的方法是使用 CMake 自己,然后将 OpenXLSX 文件夹作为子目录添加到您自己项目的源代码树中。一些 IDE 支持 CMake 项目,最著名的是 Visual Studio 2019、 JetBrains CLion 和 Qt Creator。如果使用 VisualStudio,则必须在创建新项目时专门选择“ CMake project”。
将 OpenXLSX 库作为源子文件夹包含在内的主要好处是,不需要专门定位库和头文件; CMake 将为您解决这个问题。此 ...
1、在 github 上下载要升级版本的 .tar.gz 至机器并解压
https://github.com/Kitware/CMake/releases
2、进入解压文件夹
执行
1./configure
可能会出现 permission deny 的报错,解决如下:
1chmod u+x configure
参考:https://www.cnblogs.com/ggband/p/10665312.html
可能会出现缺少 G++ 的报错,解决如下:
1sudo apt-get install g++
也可能会出现缺少 OpenSSL 的报错,解决如下:
1sudo apt-get install libssl-dev
3、make
执行
1make
4、sudo make install
执行
1sudo make install
5、验证
1cmake --version
可能会出现报错,同时仍然不显示新安装的 cmake 版本,如下:
123456root@DESKTOP-N7N3R1B:/tmp/cmake-3.20.6# cmake --ve ...
hnswlib 简介
项目代码结构
源码阅读
前言
开始吧
1、速览全文
2、找到入口
addPoint
searchBaseLayer
mutuallyConnectNewElement Part1
getNeighborsByHeuristic2
mutuallyConnectNewElement Part2
searchKnn
searchBaseLayerST
hnswlib 简介Hnswlib 是一个强大的近邻搜索(ANN) 库,热门的向量数据库 Milvus 底层的 ANN 库之一就是 Hnswlib , 为 Milvus 提供HNSW检索。
项目地址:
https://github.com/nmslib/hnswlib/tree/master
项目代码结构
项目的结构非常简单,对我们有用的( c++ 二次开发)是图上标红的几个部分。
examples/cpp
这个目录下存放着若干个 C++ 的使用范例。 EXAMPLES.md 文件对各个范例进行了简要的说明,在阅读代码前,应该先阅读这里的范例,了解使用方法。
hnswlib
这个目录 ...