Coder Social home page Coder Social logo

fiking.github.io's Introduction

  • 👋 Hi, I’m @fiking
  • 👀 I’m interested in Compiler
  • 🌱 I’m currently learning CodeGen/Frontend
  • 💞️ I’m looking to collaborate on LLVM
  • 📫 How to reach me

fiking.github.io's People

Contributors

fiking avatar

Watchers

 avatar  avatar

fiking.github.io's Issues

自动存储优化 | fiking

https://fiking.github.io/2022/09/29/%E8%87%AA%E5%8A%A8%E5%AD%98%E5%82%A8%E4%BC%98%E5%8C%96/?#more

简介高级语言的大部分优化技术研究关注于改善生成的程序的执行时间,通常以增加储存为代价。当解决了存储优化之后,通常也会影响到时间类的优化,例如指令减少相关的代码转换。在 Bliss 编译器(WJWHG75) ,这样一个存储优化编译器中,也会执行降低寄存器临时存储的转换,但是没有解决程序变量自动覆盖的问题。 微型计算机和微处理器的日益普及表明,到了全面检验自动存储优化问题的时候了。因为在小型系统的环境

指令选择的调查 | fiking

https://fiking.github.io/2022/10/03/%E6%8C%87%E4%BB%A4%E9%80%89%E6%8B%A9%E7%9A%84%E8%B0%83%E6%9F%A5/#more

摘要指令选择是代码生成中三个主要的优化问题之一 – 其它两个是指令调度和寄存器分配。指令选择器的任务是将来自目标独立表示的输入程序转换为一个特定目标的形式,期间会充分利用可以使用的机器指令。因此,指令选择是生成在特定目标机器上既正确又高效运行的代码至关重要的一部分。 尽管自 1960 年代后期以来一直在研究,但是这个领域的上一篇综合调查是写于 30 多年前的了。因为,自从它发表之后出现了许多新的方

日剧小记录 | fiking

https://fiking.github.io/2021/01/24/%E6%97%A5%E5%89%A7%E5%B0%8F%E8%AE%B0%E5%BD%95/

思索了下,记住的日剧演员的名字就只有木村拓哉和石原里美,大部分看过的剧名也都忘了。翻看下人人上的日剧集,和一些日剧排行等,大致找一下看过的,罗列一番。记不起来开始看日剧的原因和日期了。 《情书》: 雪,纯白的。相遇是命运,相知是时间,相见是对的时间对的人对的事。条件不足就只能是一页标签于书中。 《东京爱情故事》 《悠长假期》: 一直记得一个关于人生低谷的解释,虽然暂时找不到原句了。

生产环境中生命周期敏感的模调度 | fiking

https://fiking.github.io/2023/01/02/%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E4%B8%AD%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F%E6%95%8F%E6%84%9F%E7%9A%84%E6%A8%A1%E8%B0%83%E5%BA%A6/#more

摘要这篇文章给出了一个新的软流水方法,称为摇摆模调度算法(SMS)。 它生成的调度在起始间隔,寄存器需求,和阶段数量方面都是几乎最优的。摇摆模调度算法是一个启发式方法,计算开销比较低。这篇文章首先描述了相关技术,然后在通用 VLIW 架构上的 Pefect Club 基准测试套上评估它。SMS 和其它的启发式方法相比,表明了它获得的调度质量和编译时间方面都优于其它的。为了进一步探索 SMS

几卷书 | fiking

https://fiking.github.io/2021/01/26/%E5%87%A0%E5%8D%B7%E4%B9%A6/#more

从前为了考试,把规定的名著都看了一遍,至少梗概是看完的。记忆中的四大名著都是上下两册的,除了《西游记》,前一册都是风清云秀,油烹烈火的,后一册,各种人没,变成悲剧。导致只喜欢看前一册,后一册看得少。《红楼梦》,石头记,像茶一样,多喝几次会上瘾,需要细品,个中滋味。

ASIPs 的指令集定义和指令选择 | fiking

https://fiking.github.io/2022/11/17/ASIPs-%E7%9A%84%E6%8C%87%E4%BB%A4%E9%9B%86%E5%AE%9A%E4%B9%89%E5%92%8C%E6%8C%87%E4%BB%A4%E9%80%89%E6%8B%A9/#more

摘要应用特定指令集处理器(ASIPs)是架构和指令集都针对特定应用领域优化过的现场或掩码可编程处理器。ASIPs 具有较高的自由度,因此越来越多地用于电信等竞争激烈的市场。但是,迄今为止,缺少适合于 ASIPs 设计和编程的 CAD 技术。在这篇文章中,提出了一种定义 ASIPs 优化微指令集的交互式方法。第二个问题是一个为预定义的ASIP 生成代码的指令选择方法。生成了一个指令集和数据路径模型的

简单且高效的静态单一赋值形式构造 | fiking

https://fiking.github.io/2022/04/30/%E7%AE%80%E5%8D%95%E4%B8%94%E9%AB%98%E6%95%88%E7%9A%84%E9%9D%99%E6%80%81%E5%8D%95%E4%B8%80%E8%B5%8B%E5%80%BC%E5%BD%A2%E5%BC%8F%E6%9E%84%E9%80%A0/#more

摘要 我们提出一个简单的 SSA 构造算法,它允许直接从抽象语法树或者字节码翻译到一个基于 SSA 的中间表示形式。这个算法不需要事先的分析,且保证在中间表示构造期间是 SSA 的形式。这样允许在构造期间应用基于 SSA 的优化。在完成后,中间表示是最小且纯的 SSA 形式。尽管它很简单,我们算法的运行时间与 Cytron 等人的算法相当。

札记 | fiking

https://fiking.github.io/schedule/notes.html

2021规划自己的时间天边的月亮加加油写个总结与计划 百叶繁花各个职业入门贴,知识,秘史,逸事。微信小程序,书页集的形式。 初雪咖啡变得不苦了,又或是突然能接受这个味道了。想来人是会变的吧。可不变的是依旧会让人失眠。风雪夜归人,今夜雨夹雪,年岁前第一场看得见的雪。风吹得冰冰凉凉的。 决绝经历多了,就会遇到各种事情,每天卡着点上班,然后迟到,演变成惯性,不可收拾。本以为做好充足的准备,还是咯噔一下,

DWARF 调试格式简介 | fiking

https://fiking.github.io/2022/05/28/DWARF-%E8%B0%83%E8%AF%95%E6%A0%BC%E5%BC%8F%E7%AE%80%E4%BB%8B/#more

如果我们可以写出能保证正确运行,且从不需要调试的程序,将是非常美好的。直到太平的那天,正常的编程周期将涉及编写程序,编译它,执行它,然后调试它的(有点)令人害怕的祸害。一直重复直到程序如预期的工作。 通过插入代码打印选定的感兴趣的变量的值是可以调试程序的。确实,在一些场景下,如调试内核驱动,这个可能是首选的方法。这存在一个低级别的调试器允许单步通过执行程序,一条一条指令的,二进制的显示寄存器和内存

Adaption-Optimization-for-SELF:Reconciling-high-performance-with-exploratory-programming 论文翻译 | fiking

https://fiking.github.io/2021/08/28/Adaption-Optimization-for-SELF-Reconciling-high-performance-with-exploratory-programming-%E8%AE%BA%E6%96%87%E7%BF%BB%E8%AF%91/

前言 为了增加虚拟机方面的理论知识,开始了虚拟机相关的论文翻译和学习。先制定个伟大的目标,前期每周一篇翻译,后续在根据学习情况进行论文的总结精炼。 开篇文章为 Urs Hölzle 1994年的博士论文《Adaption Optimization for SELF: Reconciling high performance with exploratory programming》。根据网上

超长指令字架构和ELI-512 | fiking

https://fiking.github.io/2022/11/27/%E8%B6%85%E9%95%BF%E6%8C%87%E4%BB%A4%E5%AD%97%E6%9E%B6%E6%9E%84%E5%92%8CELI-512/#more

摘要用激进的称为轨迹调度的技术编译普通的科学应用程序,我们为并行机器生成代码,其运行这些程序将会比等价的顺序机器来得快 — 我们期望是 10 到 30 倍快。 轨迹调度为称为超长指令字架构的机器生成代码。在超长指令字机器中,许多静态调度,紧密耦合,和细粒度的操作都是在单指令流里并行执行的。VLIW 是一些当前架构的并行扩展。 这些现存的架构从未突破基本的性能屏障。它们能从并行中获得的加速比从没有超

面试经历--腾讯篇 | fiking

https://fiking.github.io/2021/07/25/%E9%9D%A2%E8%AF%95%E7%BB%8F%E5%8E%86-%E8%85%BE%E8%AE%AF%E7%AF%87/#more

背景 有个猎头一直在问是否要出去面面试之类的,在闲下来之后,本着出去试试水,看看外面的世界和自己当前的水平,就答应的去面试了下。在6月份试着面试了腾讯的OpenJDK部门的岗位。准备不是很充分,加上线上面试,电脑环境还出现了些问题,导致面试过程比较尴尬,总体上整体表现不良。结果是意料中的不通过。

全局值标号和冗余计算 | fiking

https://fiking.github.io/2022/05/04/%E5%85%A8%E5%B1%80%E5%80%BC%E6%A0%87%E5%8F%B7%E5%92%8C%E5%86%97%E4%BD%99%E8%AE%A1%E7%AE%97/#more

简介之前大部分的冗余消除算法都可以分为两类。词法算法处理整个程序,但是它们只能识别词法完全相同表达式的计算的冗余,这里说的表达式词法完全相同指的是,将完全相同的运算符应用于完全相同的操作数。另一方面,值标号算法,可以识别词法不同但肯定会计算相同的值的表达式间的冗余。这是通过给表达式赋一个叫值编号的特殊符号的名称来完成的。如果两个表达式的操作数的值编号完全相同,且应用于表达式的操作符完全相同,则表达

CHESS:嵌入式 DSP 处理器的可变目标代码代码生成 | fiking

https://fiking.github.io/2022/12/08/CHESS%EF%BC%9A%E5%B5%8C%E5%85%A5%E5%BC%8F-DSP-%E5%A4%84%E7%90%86%E5%99%A8%E7%9A%84%E5%8F%AF%E5%8F%98%E7%9B%AE%E6%A0%87%E4%BB%A3%E7%A0%81%E4%BB%A3%E7%A0%81%E7%94%9F%E6%88%90/#more

摘要这章介绍 CHESS,一个定点 DSP 处理器的可变目标代码生成环境。CHESS 解决了一系列的商业特定应用领域的处理器,它们越来越广泛地应用在通信,语音和音频处理中的嵌入式应用中。CHESS 是基于混合的行为/结构处理器表示模型的,它可以解释许多的架构特性,典型的如定点 DSP 处理器。此外,这个代码生成器采用了一系列高效的优化技术。这些特性产生了高度优化的机器码。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.