Arch Linux 安装 VMware
记录一下 Arch Linux 安装 VMware 过程以及需要打的一些补丁包
Arch Linux 安装 VMware安装 vmware workstationAUR 仓库上已经有打包好的 vmware workstation 包,可以直接通过 yay 进行安装:
123sudo pacman -S fuse2 gtkmm linux-headers pcsclite libcanberra # 安装相关依赖yay -S --noconfirm --needed ncurses5-compat-libs # 安装 ncurses5-compat-libs 依赖yay -S vmware-workstation # 安装 vmware
这样子安装后的版本为 17.5.2-3,然后我们要启动相关的系统服务:
1234# vmware-networks.service 用于访客网络访问# vmware-usbarbitrator.service 用于将 USB 设备连接到访客sudo systemctl enable vmware-networks.service vmware-us ...
免域名 Tailscale DERP 中继节点搭建
简单记录一下使用阿里云服务器搭建 Tailscale 免域名 DERP 中继节点的过程
免域名 Tailscale DERP 中继节点搭建因为局域网内的设备无法直接访问到公网,所以需要一些代理服务工具来完成设备间的互联。Tailscale 是一款基于 WireGuard 的异地组网工具,它可以将不同网络环境的设备组成一个虚拟局域网,使其可以互相访问。
Tailscale 官方提供了一些中继节点,但是这些节点大多位于国外,延迟不是很理想,我使用 tailscale netcheck 命令进行 derp 的延迟检查,结果如下:
可以看到,官方提供的这些 derp 服务器延迟都比较大,而我使用刚好有一台阿里云国内服务器,所以便想用这台服务器搭建一台中继节点。
安装 Go安装下载依赖:
1apt install -y wget git openssl curl
然后去 Go 语言的 官网 下载对应版本即可
尽量选择最新的 Go 版本, 否则可能会导致无法编译后续的 tailscale derper 模块
安装 Tailscale derper拉取 derper 工程:
1go inst ...
在 macOS 上搭建 ysyx 开发环境
在 macOS 上搭建 ysyx 开发环境
ysyxSoC Chisel 开发环境配置
最近一生一芯做到了接 SoC 的部分,发现还是需要重新配置一下 mill 的配置文件才能使用 IDEA 的高亮和代码跳转,因此记录一下配置过程。
ysyxSoC Chisel 开发环境配置如果是在 2024 年 4 月 21 号后获取的代码,请直接跳到 新版本 ysyxSoC 代码导入章节!
代码导读ysyxSoC 的代码可以通过下面的命令进行获取:
12cd ysyx-workbenchgit clone [email protected]:OSCPU/ysyxSoC.git
ysyxSoC 的代码结构如下:
123456789101112131415161718ysyxSoC├── Makefile├── chiplink # chiplink 相关代码├── generated # 生成的 SoC 代码│ ├── ysyxSoCFull-ChipLink.v│ └── ysyxSoCFull.v├── lint # verilator lint 检查│ ├── Makefile│ ├ ...
Chisel 环境搭建
Chisel 环境搭建
新手在最开始接触 Chisel 时可能会遇到各种各样的问题,例如怎么构建 Chisel、怎么生成 verilog,网上可能会有一些教程介绍了如何上手 Chisel,但是由于这些年 Chisel 的不断升级迭代,这些教程中提到的一些方法可能已经过时(例如 Chisel 更改了生成 Verilog 的 api、编译器从 SFC 换成了 MLIR),因此本文会记录一些我在搭建 Chisel 开发环境时遇到的坑和注意点。
但是我也还是无法保证本文提供的方法能和未来的 Chisel 兼容 (Chisel 更新的越来越快了 qwq)。此外,由于我在 Linux 上进行开发,因此本文只介绍 Linux 上的配置方法(如有在 Windows 上开发的需求,请自行搜索)。
什么是 Chisel?Chisel(Constructing Hardware In a Scala Embedded Language)是 UC Berkeley 开发的一种开源硬件构造语言。它是建构在 Scala 语言之上的领域专用语言(DSL),支持高度参数化的硬件生成器。Chisel 将硬件构造原语 ...
配置 GEM5
配置 GEM5TODO
上手使用 GEM5
GEM5 是一个开源计算机架构模拟器,包括系统级架构以及处理器微架构。GEM5 的前身为密歇根大学的 m5 项目与威斯康星大学的 GEMS 项目。2011 年 m5 与 GEMS 合并为 Gem5,目前被广泛用于学术界和工业界。通过谷歌学术可以看到,Gem5 目前被引用超过 5000 次,大量论文采用 Gem5 作为研究工具。同时也被许多工业界公司使用,包括 ARM、AMD、Google、Micron、Metempsy、HP、Samsung 等。
上手 GEM5Gem5 主要由 C++ 和 python 编写的。其中 C++ 占绝大多数,主要负责底层架构的具体实现等,Python 则负责对象的初始化、配置和模拟控制等。另外包含了两个领域特定语言 DSL,其中 ISADSL 负责统一二进制指令的解码和语义规范,SLICC 用于实现缓存一致性协议。
安装 GEM5First Step
获取源码 1git clone https://github.com/gem5/gem5
安装依赖
推荐在 ubuntu 环境下进行构建(或者在 docker 中进行)
我也尝试过在 arch 或是 ...
GEM5 运行 spec 测试
GEM5 运行 spec 测试TODO
搭建 Verilator 仿真环境
搭建 Verilator 的环境跟着官方的文档来就行
搭建 Verilator 仿真环境Verilator 介绍翻译自官方介绍:
Verilator 的调用参数类似于 GCC 或 Synopsys 的 VCS。 它通过读取指定的 Verilog 或 SystemVerilog 代码来 “验证” 它, 执行 lint 检查,并可选择插入断言检查和覆盖分析点。它输出单线程或多线程的.cpp 和.h 文件,”Verilated” 代码。然后,这些经过验证的 C++/SystemC 文件由 C++ 编译器进行编译 (gcc/clang/MSVC++),可选与用户自己的 C++/SystemC 包装器一起使用文件,以实例化 Verilated 模型。执行结果可执行文件执行设计模拟。Verilator 还支持链接验证生成的库(可选加密)到其他模拟器中。如果您希望功能齐全,需要 SDF 注释,混合信号仿真的仿真器,或者正在做一个快速课程项目 (我们推荐 Icarus Verilog 用于课堂作业),Verilator 可能不是替代闭源 Verilog 模拟器的最佳选择。然而,如果你正在寻找一条将 ...
AWS 服务器训练深度学习模型 (Yolov5)
大二时候学习了深度学习后,开始上手自己训练模型。在训练过几个模型后,觉得使用自己的笔记本训练模型算力实在是吃紧 (后来还导致笔记本烧主板),于是租用了 AWS 服务器进行模型训练。
AWS 服务器训练深度学习模型 (以 Yolov5 为例)参考了李沐老师的视频
现在回过头来看,还是用 Google 的 Colab 会员训练似乎更划算一些,能租到 A100 和 T4,费用也不算太离谱
💡 出于经费限制,我当时选择了最低配置的服务器,不过对于训练数据集较大的情况下,服务器的内存或显存大小可能会影响模型的训练速度,当然选择更好的配置也会增加费用
购买 AWS 服务器
注册 AWS 账号
AWS Console 控制台_亚马逊云管理控制台 - AWS 云服务
💡 申请实例数量需要经过亚马逊人工审核 较耗时
配置服务器类型
系统 Ubuntu
较便宜 GPU 类型:g4dn
查看配置和价格网站
Amazon EC2 Instance Comparison
存储从 8GB 改为 20GB 或者更大
选择密钥 (没有密匙的话可以新建 ...