周日从闻堰码头骑车回家途中的随拍。在杭州的第一个房子,就买在了闻堰,闻堰码头之前来是因为早上附近有个鱼市,买菜的时候顺便去看过几次,这么多年了,这个周末还是第一次从闻堰码头坐船去了对面的袁浦,从江的对面看了过来
开源
回顾2024
回顾一下2024年Github上的活动:
- apache/incubator-devlake 陆陆续续地贡献了几个Bugfix,由于年初部门在使用Gerrit管理代码,还完成了一个完整的Gerrit的插件,后面大家转Gitlab了,也就没有后来了。
- apache/incubator-devlake-helm-chart 作为这个仓库最初的主要作者,今年几乎没有啥Contributions,除了少量的Review,确实有些对不住PPMC的头衔了。
- milvus-io/milvus-lite 作为Milvus的一个轻量级版本,上半年尚在2.3的版本上做了一些维护,所幸,社区在2.4版本上做了重构,中国的开源更多地还是依赖商业公司的背后支持。不知道这一状况有生之年能否看到有所改变。
- milvus-io/milvus-sdk-cpp 作为Milvus的C++ SDK,我称之为最冷门的SDK,今年做了有限的Bugfix,由于这个仓库我并没有维护者的权限,所以一些来自社区的PR,我想要帮助合并进来,却也无从下手了。这可能是C++的悲哀吧。确实C++上开发应用软件效率并不是那么吸引人。
- matrixji/wireshark-dissector-gb32960 一个学习国标32960的习作,作为Wireshark的Dissector,基本能够解析GB32960的报文,后面会考虑做一些基本的维护,不过仓库貌似无人问津。
- matrixji/bin-weekly 作为BIN周刊的源码仓库,2024年底开始,希望能够持续,有始有终吧……
技术
编程语言性能之争
发现了一个有意思的题目: one-billion-row-challenge
10 亿行挑战 (1BRC) 是一个有趣的探索,探讨了从文本文件中聚合 10 亿行可以推动现代 Java 走多远。获取所有(虚拟)线程,联系 SIMD,优化 GC 或拉拢任何其他技巧,并创建最快的实现来解决此任务!
大致就是从一个1B(十亿行)文本记录中(记录了各地的不同时间的温度值),需要找出每个地点的记录的最小值,平均值,最大值,然后按照字母排序输出。
这个项目仅允许使用Java进行比赛。结果可以在gunnarmorling/1brc看到。其实看起来 JDK 21 + GraalVM native binary的性能还是不错的。
当然在讨论区也有各种其他语言的实现的结果展示,基本看下来最终的王者还是Native的语言,C/C++加上大量的AVX优化,别无他法。
随笔
闻堰码头骑行
钱塘江上剩下不多还在运营的渡船,从闻堰码头到袁浦码头,只有这一条线路,以前是为了方便两岸的居民出行,现在个人感觉基本上是为了游客服务了。 随着交通的便利,也不知道这个码头还能运营多久……