avatar
文章
89
标签
3
分类
13
归档
分类
照片
关于
搜索
CodeTalks
搜索
归档
分类
照片
关于
搜索

CodeTalks

Linux 内核模块调试方法
发表于2022-03-19|编程分享
调试内核模块和调试 Linux 程序本身差不多,都可以使用 gdb + qemu 来调试,也可以使用 Linux 内核自带的 kgdb 工具调试。不过因为内核模块是动态加载的,需要 add-symbol-file 来指定模块的加载地址。 使用 kgdb 调试需要使用到串口进行通信。可以在 qemu 启动系统的时候加入参数 -serial tcp:localhost:4321,server,nowait,将内核的串口设备映射到本机 tcp 连接上,然后编辑 /etc/default/grub 在系统启动参数里加入 kgdboc=ttyS1,115200 nokalsr ,并运行 sudo ...
托福备考经验分享
发表于2021-12-10|大学学习
tl; dr 纯自学托福 108(R29+L30+S23+W26) ,大约零散准备三周,做了十套阅读、听力,两套写作,五套口语,写作和口语没有找人批改 本人四六级裸考分别 647、561,对照你的水平来预估准备时间 这只是一个语言考试,有应试技巧,有策略地分配你的备考时间 尽可能搜集免费的资料 上考满分做 TPO,务必限时 阅读或听力有加试题 听力是重中之重,听力能力会很大程度上影响你的成绩 会听,更要会记 口语写作要提前准备模板、例子和理由,但不能生搬硬套 有条件的要找人批改口语写作 写作避免犯低级错误,尤其是定冠词 提升打字速度 合理利用 TPO,但也别迷信 写在前面2021 年 ...
关于 Monorepo 的一点想法
发表于2021-08-08|编程分享
Google、Facebook 的单一代码仓库已闻名遐迩,不过在没有真正接触过实际的 Monorepo 项目之前,可能很难想象 Monorepo 是怎么工作的。我在学校里的时候也没太理解,直到去了微信实习才看到了真正的 Monorepo,当然他们不是全 BG 共享代码,实际上单个 repo 的规模要比 Google 那种全公司共享要小,使用也不是特殊的客户端,就是普通的 git,也没有使用 git-vfs 之类的,而是把代码全拉下来开发。不过,虽然只是 Google 真正的 Monorepo 的模仿,也能管中窥豹,大致理解 Monorepo 的特点。 最大的感受是,量变引起质变,当代码仓...
使用 Ray Tune 进行分布式调参
发表于2021-05-26|编程分享
之前学习了怎么使用 PyTorch 进行分布式训练,不过,手动计算参数启动进程还是比较麻烦的。Berkeley 的 RISELab 开发了 Ray 这个框架来简化分布式计算程序的编写。Ray 有以下几个优点: 支持在多种云平台一键部署集群 支持 Autoscaling,可以节省成本 支持多种深度学习框架,比如 PyTorch、TensorFlow 通过 Ray 统一的编程 API,写好的程序既可以在本地集群跑,本地集群资源紧张的时候也可以直接放到云端跑,不需要改代码,集群管理和调度都不需要我们自己操心。同时,Ray 还提供了调参库,等模型迭代成熟之后可以直接使用 Ray Tune 进...
PyTorch 多卡分布式训练
发表于2021-05-22|编程分享
目前,PyTorch 官方已经准备逐渐放弃对 DataParallel 的支持。而且受限于 Python 的 GIL,DataParallel 采用的多线程模型不能充分发挥多核性能。PyTorch 官方建议大家使用 DistributedDataParallel(简称 DDP),即使你只有一台服务器。这个类使用上会复杂一些,PyTorch 官方教程写的比较复杂,这个教程将步骤拆解一下,方便入门。 DDP 原理DDP 的原理是开启多个进程,每个进程占用一张卡来进行训练。在训练开始之前,每个进程需要加载相同的模型权重,这样大家就有同样的起点。然后,训练过程中,每个进程单独加载不同的训练集的子...
CMU 15-445 Fall 2020 Labs 实现笔记
发表于2021-03-27|编程分享
之前在 YouTube 刷了一下数据库入门基础课程 CMU 15-445/645 的 Lecture Videos,感觉 Andy 是个很有个性也很有趣的人,课堂气氛很活跃,也将数据库的基础知识讲的深入浅出,例子生动。虽然之前大二也修读了数据库的相关课程,但是由于时间限制,并没有讲关于索引并发控制的问题(事务并发控制还是讲了的),也没有讲 Recovery 的知识(听师兄说有一年不仅没讲,期末考试还考了,开卷考考场现学 ARIES),倒是讲了很多 Funtional Dependency 相关的知识。所以看网课也主要看了课内没讲的东西。 当然,课程内容其实大同小异,精华部分还在...
MIT 6.824 2015 Paxos Lab 实现笔记
发表于2021-03-27|编程分享
There is only one consensus protocol, and that’s Paxos. – Mike Burrows, author of Chubby 在 2015 年及以前,MIT 6.824 课程的一致性算法实验都是用的 Paxos 算法。实现了 Raft 之后觉得也有必要实现一下 Paxos 这个经典的算法。 首先 Paxos 算法最原始的论文有 Leslie Lamport 写的 The Part-time Parliment 和 Paxos Made Simple。前面一篇是 1990 年写的,而且不同于其他学术论文,这篇论文用讲故事的方法来描述 ...
MIT 6.824 Spring 2021 Raft Lab 实现笔记
发表于2021-03-18|编程分享
最近花时间做了一下 6.824 的 Raft Labs,总算把 Raft 亲自实现了一下,收获还是很大的,羡慕 MIT 学生。实验提供的初始代码可以通过 git clone git://g.csail.mit.edu/6.824-golabs-2021 6.824 获取。Lab 指导资料可以在 https://pdos.csail.mit.edu/6.824/labs/lab-raft.html (Lab 2) 和 https://pdos.csail.mit.edu/6.824/labs/lab-kvraft.html (Lab 3)获取。Lab 4 是 Sharded KV Serv...
论文阅读 | TransCoder AI 转译代码
发表于2020-12-24|机器学习
个人感觉还是比较有意思的一个工作。 Paper:https://arxiv.org/abs/2006.03511 Code:https://github.com/facebookresearch/TransCoder Facebook 用 XLM 对代码进行预训练,用了无监督翻译的思想,达到 AI 自动翻译代码的效果。虽然理论上图灵完备的语言都能互相转换,而且像 TypeScript 之类的语言通常自带 Transcompiler 将自己编译到 JavaScript 等已经有解释器/编译器的语言,但是这需要 Transcompiler 作者对源语言和目标语言都非常熟悉,而且需要...
机器学习 | EM 算法
发表于2020-11-13|机器学习
EM 算法实验最大似然估计在已知每次实验的硬币是 A 和 B 的情况下,我们可以直接使用最大似然估计求解 A、B 硬币正面出现的概率 $p_A$ 和 $p_B$。由于每次实验都是独立地抛十次,所以可以知道实验结果服从二项分布 $B(10, p_A)$ 和 $B(10,p_B)$。 设 A 硬币的第 $i$ 次实验正面朝上的次数为 $y_A^{(i)}$, B 硬币的第 $i$ 次实验正面朝上的次数为 $y_B^{(i)}$,分别进行了 $n_A$ 次实验和 $n_B$ 次实验,可以得到 A 的似然估计函数为: $$ L_A=\prod^{n_A}_{i=1}{10\c...
1234…9
avatar
howardlau
记录想法
文章
89
标签
3
分类
13
GitHub
最新文章
朝花夕拾:一场从 2012 年开始的游戏汉化2026-09-05
让 FlapPGA Mario 在浏览器里重新跑起来2026-08-25
DeepSeek 3FS 源码解读——客户端篇2025-03-16
DeepSeek 3FS 源码解读——RPC 篇2025-03-03
DeepSeek 3FS 源码解读——磁盘 IO 篇2025-03-02
分类
  • DeeCamp 20181
  • IT 杂谈2
  • Uncategorized1
  • 大学学习9
    • ucore8
  • 机器学习7
  • 游戏推荐2
  • 科普3
归档
  • 2026 年 09 月 1
  • 2026 年 08 月 1
  • 2025 年 03 月 4
  • 2025 年 01 月 1
  • 2023 年 09 月 1
  • 2023 年 08 月 1
  • 2022 年 08 月 3
  • 2022 年 07 月 1
网站信息
文章数目 :
89
最后更新时间 :
© 2017 - 2026 By howardlau
粤 ICP 备 17129444 号-1
搜索
数据加载中