首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python开发者是区块链采用的关键

在整个职业生涯中,我经历过诸多不同的职位——从衍生品分析师到应用密码学家——但我本质上仍是一位软件工程师。我始终喜欢编码,就像许多其他标榜为“开发者”的人一样,我掌握着多种编程语言——包括 Java、Swift、C、Rust 等常客。因此,当我身为密码学家的那一面迷恋上分散式计算,继而深入研究比特币和门罗币等理念时,我身上的开发者一面便接下了学习区块链所需的新编程语言的挑战。通过此次经历,我立刻看到了一个重大的障碍:需要学习一种全新的编程语言。即使这种语言与现有语言存在相似之处(譬如 Solidity 类似于 JavaScript 语法),但它仍然可能限制能够为分散式操作系统构建应用程序的人数。

01
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    再次重构LLVM+Clang+libcxx+libc++abi+其他相关工具的构建流程

    我们有时候写一些基础性类库或者实验新功能的时候,常常需要使用到最新版本的GCC和Clang。一些Linux发行版的源里和一些工具链(比如MSYS2)里其实自带LLVM套件的包,LLVM 官网也提供一些常见平台的预编译包下载。 那为什么我们还要自己编译呢?如果有注意到的小伙伴可能会发现,很多平台的源和 LLVM 官网 里下载的预编译包,其实是缺失很多组件的。有些没有libc++和libc++abi(CentOS 8),有些没有Sanitizer相关的组件,有些缺失其他的组件。而Clang虽然支持GCC的libstdc++,但是一方面我们写基础性类库还是要优先考虑原生STL库的兼容性,另一方面Clang对libstdc++的支持也不是太好,特别是有些第三方库在这个组合下也是没有适配得很好,同时gdb和libc++的搭配有时候也不是很完善。 所以我们就需要一个组件尽可能开完整地包含LLVM,Clang,libc++,libc++abi还有其他周边工具(各类Sanitizer,clang-tiny,clang-analyzer等等)的工具链。

    02

    多模态图表理解新SOTA: TinyChart-3B,兼顾性能和效率

    作为一种重要的信息来源,图表(Chart)能够直观地展示数据关系,被广泛地应用于信息传播、商业预测和学术研究中 [1]。随着互联网数据的激增,自动化图表理解受到广泛关注,近期诸如GPT-4V、QwenVL-Max和Gemini-Ultra等通用闭源多模态大模型都展现出一定的图表理解能力,开源模型Chartllama [2]、ChartAst [3]等也在图表问题回答、图表总结和图表转换等任务上取得强大的性能。然而,目前开源的图表理解模型有以下三个局限:(1)模型参数规模庞大,难以部署到应用中。例如Chartllama包含13B参数,无法直接部署到单张小于26 GB显存的消费级显卡上 [4]。(2)模型容易出现数值错误,尤其是回答涉及数值计算的问题时 [3]。(3)模型无法高效处理高清图片,而许多关键信息(比如OCR文本)往往需要在较高分辨率下才清晰可见。并且,考虑到标准视觉Transformer会产生较长的视觉特征序列,直接提高输入分辨率又会带来计算效率问题。

    01

    再度优化GCC、LLVM、Clang、libc++、libc++abi等套件的构建脚本

    一直以来,我都维护了完整的 GCC 工具链构建工具 和 LLVM,Clang,libc++,libc++abi工具链构建工具 。 一方面是为了测试和体验新版本编译器的功能和利用一些更现代化的工具检查代码中的风险,另一方面也是为了给我得很多开源仓库做多版本适配。 其中所有的编译期依赖项(不包括 tar,awk等可执行程序的工具)都是自己构建的,这样也能管理好某些新版本组件需要的新版本依赖项,并且做到跨发行版兼容。同时很多发行版自带的 LLVM+Clang 套件都缺斤少两,有的缺少 clang-analyzer ,有的缺少 clang-format ,也有的缺少 libc++ 和 libc++abi 或者缺少sanitizer组件。我也是根据自己的需要编译并输出了大多数开发工具,甚至还有一些开发库以便二次开发(比如用libclang写工具来复用libcang的AST功能)。

    04

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券