Spice:一种在 Zig 中实现亚纳秒级开销的细粒度并行机制
Spice是一个Zig的细粒度并行库,使用心跳调度实现高效并行,具有亚纳秒级开销和无竞争的优点。Spice通过将任务放入本地工作队列,并使用心跳机制将任务分发到空闲线程,避免了传统工作窃取机制的动态调度、原子操作和自旋锁带来的开销。文章详细介绍了Spice的实现细节,包括静态调度优化、心跳信号、无锁数据结构和栈空间优化等,并通过与Rust并行库Rayon的性能对比,展示了Spice在细粒度并行任务上的优势。
阅读更多
Spice是一个Zig的细粒度并行库,使用心跳调度实现高效并行,具有亚纳秒级开销和无竞争的优点。Spice通过将任务放入本地工作队列,并使用心跳机制将任务分发到空闲线程,避免了传统工作窃取机制的动态调度、原子操作和自旋锁带来的开销。文章详细介绍了Spice的实现细节,包括静态调度优化、心跳信号、无锁数据结构和栈空间优化等,并通过与Rust并行库Rayon的性能对比,展示了Spice在细粒度并行任务上的优势。
阅读更多
这是一个使用 ASCII 字符进行 3D 渲染的 JavaScript 库,该项目包含博客文章 (韩语) 的示例代码。您可以在此链接观看示例:https://6637eb83d047d2bb1b3cfe67-nhlvitxryq.chromatic.com/
阅读更多
adbfs-rootless是一款可以在Linux系统上无需root权限,直接使用adb命令挂载安卓手机的工具。用户需要安装libfuse-dev、adb、build-essential、git以及pkg-config等依赖库,并将项目克隆到本地进行编译。编译完成后,创建一个挂载点,使用adbfs命令即可将手机挂载到Linux系统上。
阅读更多
Blitz 是一个使用 Rust 构建的“原生”HTML/CSS 渲染器,用于支持“Dioxus Native”项目。它本质上是一个轻量级 webview,使用原生 Rust API 替代了 JavaScript 引擎,允许 Dioxus 等 Rust 响应式/状态管理库直接与其交互。它利用 Stylo 进行 CSS 解析,Vello + WGPU 进行渲染,Taffy 进行盒级布局,Parley 进行文本/行内级布局。Blitz 旨在渲染 HTML 和 CSS,致力于支持现代 HTML 布局、高级 CSS、HTML 表单控件和可访问性。
阅读更多
Verso 是一款基于 Servo web 引擎构建的网页浏览器,目前仍处于开发阶段。它使用 Rust 语言开发,支持 Windows、MacOS 和 Linux 平台,可以通过 Flatpak 或 Nix 进行构建。Verso 的目标是提供一个安全、快速、现代的网页浏览体验。
阅读更多
pg_replicate是一个Rust库,用于快速构建Postgres的复制解决方案。它提供了构建数据管道的模块,可以将数据从Postgres持续复制到其他系统。它在 Postgres 的逻辑流复制协议之上构建抽象,并使用户能够专注于构建解决方案,而无需担心协议的底层细节。
阅读更多
Hazard3 是一款三级流水线 RISC-V 处理器,实现了 RV32I 指令集以及 M、A、C、Zicsr、Zba、Zbb、Zbc、Zbs、Zbkb、Zcb、Zcmp 等可选扩展指令集。它支持调试、机器和用户权限/执行模式、特权指令、物理内存保护以及高达 16 个自然对齐区域。该仓库还包含一个兼容的 RISC-V 调试模块,可以通过 AMBA 3 APB 端口或可选的 JTAG 调试传输模块进行访问。
阅读更多
Shortwire 是一款适用于 Linux 的极简 VPN 守护程序,能够在两台计算机之间建立点对点连接,并创建一个虚拟网卡,允许任何应用程序(如 SSH、NFS、HTTP 服务器等)透明地使用该连接进行数据传输。它使用加密技术保护数据安全,使用简单,需要先生成加密密钥,然后在服务器和客户端分别运行 shortwired 命令即可。
阅读更多
本文介绍了 antsdr-fw-patch 仓库,该仓库用于生成 Microphase 软件无线电设备固件。文章详细说明了使用 Xilinx Vivado 构建固件的步骤,包括安装构建要求、获取源码、设置环境、应用补丁以及生成最终的固件文件。此外,还介绍了如何创建 SD 卡启动镜像、使用 DFU 模式更新闪存以及支持 2r2t 模式的配置方法。
阅读更多
OpenSnitch是一款面向GNU/Linux系统的交互式应用程序防火墙,其灵感来自Little Snitch。它允许用户监控和控制应用程序的网络连接,阻止广告、跟踪器和恶意软件域,并通过图形界面配置系统防火墙。
阅读更多
VFusion3D是一种大型的、前馈的3D生成模型,使用少量3D数据和大量的合成多视图数据进行训练。该模型是第一个探索可扩展的3D生成/重建模型的工作,作为迈向3D基础模型的一步。文章介绍了VFusion3D的代码库,包括安装步骤、预训练模型、快速入门指南以及如何根据不同的视角输入进行自定义。
阅读更多
Nous 是一个开源的 TypeScript 平台,用于构建自动 AI 代理和基于 LLM 的工作流程。它提供高级自动代理、推理/规划、内存和函数调用历史、自适应迭代规划、支持多 LLM/服务、人工干预以及灵活的部署选项。 Nous 还包括一个代码编辑代理,可以自动检测项目初始化、编译、测试和 lint,并找到相关的文件进行编辑。
阅读更多
Qlot 是一个面向 Common Lisp 的项目本地库安装程序,它使用 Quicklisp 来管理库依赖关系。它旨在解决 Common Lisp 项目中库版本管理的问题,允许开发者在项目本地安装和使用不同版本的库,并确保项目的可移植性。Qlot 支持从 Quicklisp、Ultralisp、GitHub 等多个来源安装库,并提供了灵活的配置选项。
阅读更多
LLM辅助OCR项目是一个先进的系统,旨在利用大型语言模型 (LLM) 显著提高光学字符识别 (OCR) 输出的质量。该项目将原始OCR文本转换为高度准确、格式良好且可读的文档。其功能包括PDF到图像的转换、使用Tesseract进行OCR、使用LLM进行高级错误纠正、智能文本分块以实现高效处理、Markdown格式选项、页眉和页码抑制(可选)、最终输出的质量评估等。
阅读更多
Stack Auth 是一款开源的用户身份认证和授权平台,可以替代 Clerk 和 Auth0。它提供多种功能,例如 OAuth、密码凭据、用户管理、多租户、角色访问控制、Webhook 等。Stack Auth 支持 Next.js 前端和任何可以使用 REST API 的后端。
阅读更多
LibreCUDA项目旨在替代CUDA驱动程序API,通过直接与硬件通信(使用ioctls和QMD)来绕过专有的CUDA运行时,从而在Nvidia GPU上启动CUDA代码。该项目仍处于早期阶段,仅实现了基本的CUDA功能,例如分配/释放GPU内存、上传和启动CUDA ELF二进制文件等,但它展示了在没有CUDA运行时的情况下运行CUDA代码的可能性。
阅读更多
该项目实现了一个在鼠标固件中运行的Pong游戏,通过快速移动光标来实现视觉暂留效果。游戏利用了鼠标的绝对定位功能,将光标快速移动到游戏元素的位置,从而模拟出游戏画面。该项目使用了Seeed Studio XIAO RP2040开发板和Adafruit TinyUSB库,需要对硬件进行一定的改造。
阅读更多
本文介绍了 AWS SDK 代码示例库,该库包含了大量演示如何使用 AWS SDK 与 AWS 服务交互的代码示例。这些示例涵盖了多种编程语言,例如 .NET、C++、Go、Java、JavaScript、Kotlin、PHP、Python、Ruby、Rust 和 Swift。库中的代码示例按照编程语言和服务进行组织,方便开发者查找和使用。
阅读更多
本文 proposes 在 C# 中添加类型联合(也称为可区分联合)的方案,以解决需要在单个变量中存储不同类型值的问题。文中详细讨论了四种类型的联合:标准联合类、专门的联合结构体、Ad Hoc 联合和自定义联合,并提供了每种类型的声明、构造、解构、等效性和可赋值性等方面的详细说明,并通过示例代码演示了它们的用法。此外,该提案还讨论了与类型联合相关的其他特性,例如封闭层次结构、单例值、嵌套成员简写、模式匹配和类型推断等。
阅读更多
这是一篇介绍适用于 IBM PC/XT 及其兼容机的 RAM 测试 ROM 的文章。该 ROM 可以测试传统 RAM 中的每个字节,并执行两种类型的 RAM 测试:March-U 算法和基于 Jack Ganssle 发表的思想的位模式和地址/数据总线测试。文章详细介绍了如何在 IBM PC 5150、IBM PC/XT 5160 和 PC/XT 兼容机上使用该 ROM,以及如何修改和构建该 ROM。
阅读更多
Sourcetrail是一款免费开源的跨平台源码浏览器,旨在帮助开发者提高对不熟悉源码的理解和开发效率。它支持离线工作,可在Windows、macOS和Linux系统上运行,并支持C、C++、Java和Python语言,还提供SDK (SourcetrailDB) 用于编写自定义语言扩展。
阅读更多
这是一款名为lacakgrak的简单网络数据包嗅探工具,它可以捕捉进出网络的数据包,并每10秒更新一次统计数据。该工具使用Python语言编写,并依赖于scapy库。
阅读更多
Xmoji 是一款适用于 X11 的简单表情符号键盘,它不依赖任何工具包或输入法,使用 XRender 请求渲染其 GUI。它提供按类别分组的表情符号,可以通过单击发送到 X11 应用程序,并支持通过 X 资源进行外观自定义。
阅读更多
ScholArxiv 是一款开源应用程序,允许用户搜索、阅读、收藏、分享、下载和查看来自 arXiv 资源库的学术论文摘要。该应用程序提供简洁美观的界面,并支持论文摘要的语音播放功能。用户可以通过关键词、标题、作者和摘要来搜索论文,并在没有提供关键词的情况下获取随机推荐的热门论文。
阅读更多
该项目使用Python实现了A*寻路算法和多种迷宫生成算法,并提供了可视化功能。用户可以自定义迷宫网格大小、寻路算法、启发式函数等参数,并选择不同的迷宫生成算法,如DLA、生命游戏、随机游走等。项目还支持将寻路过程保存为动画或图片,方便用户观察和分析算法的执行过程。
阅读更多
WhenFS 将 Google 日历变成了一个 FUSE 文件系统,支持读取、写入文件和目录等功能。它可以将文件存储在 Google 日历事件中,并允许用户将朋友的 WhenFS 日历文件系统挂载到自己的系统中。该项目旨在探索 Rust 和 FUSE 文件系统,不建议在实际场景中使用。
阅读更多
age 是一款简单、现代、安全的加密工具和 Go 库,它使用简洁的密钥、无需配置选项,并具有 UNIX 风格的可组合性。该工具支持使用 age 密钥、SSH 密钥或密码进行加密,并可以解密使用这些方法加密的文件。
阅读更多
Qub 是一个命令行工具,可以生成 Web 服务器和框架,用于在 QB64(QBasic 的现代变体)中构建网站。它提供页面路由、静态文件服务、二进制文件服务、自定义 404 页面支持和基本动态变量支持等功能。文章介绍了 Qub 的入门方法、网站创建步骤以及网站目录结构和文件说明。
阅读更多