- 👋 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 Introduction
fiking.github.io's People
fiking.github.io's Issues
AMD1700x+MSI(X370)VMware 报错 | fiking
面试经历--阿里云异构编译 | fiking
初现世间 | fiking
hexo blog编写需要的命令 | fiking
创建md文件 1hexo new post "hexo blog编写需要的命令"
自动存储优化 | 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
背景通过翻译编译器相关的论文,学习了解编译器的理论和技术实现,为后续学习开源代码以及设计实现编译器打下理论基础。
test gitalk
面试经历--字节篇 | fiking
背景 在六月面试了字节跳动的 Linux 内核岗位,一言难尽。
指令选择的调查 | fiking
摘要指令选择是代码生成中三个主要的优化问题之一 – 其它两个是指令调度和寄存器分配。指令选择器的任务是将来自目标独立表示的输入程序转换为一个特定目标的形式,期间会充分利用可以使用的机器指令。因此,指令选择是生成在特定目标机器上既正确又高效运行的代码至关重要的一部分。 尽管自 1960 年代后期以来一直在研究,但是这个领域的上一篇综合调查是写于 30 多年前的了。因为,自从它发表之后出现了许多新的方
记电子游戏 | fiking
https://fiking.github.io/2021/01/08/%E8%AE%B0%E7%94%B5%E5%AD%90%E6%B8%B8%E6%88%8F/
《仙剑奇侠传4》 : 云天河、韩菱纱、柳梦璃、慕容紫英 听说是个比较好的故事,即墨花灯,遂过了一下主线剧情,梦散时,踏剑离去,屋前清坟,相知无言。20171008 《古剑奇谭1》 : 因为电视剧知道的,看不下去,就去玩这个游戏,4个DLC的比较有意思。
bat script | fiking
https://fiking.github.io/2021/12/16/bat-script/
12# 压缩 test 目录 到 mn.tar/f/system/WinRAR/Rar.exe a mn test
日剧小记录 | fiking
https://fiking.github.io/2021/01/24/%E6%97%A5%E5%89%A7%E5%B0%8F%E8%AE%B0%E5%BD%95/
思索了下,记住的日剧演员的名字就只有木村拓哉和石原里美,大部分看过的剧名也都忘了。翻看下人人上的日剧集,和一些日剧排行等,大致找一下看过的,罗列一番。记不起来开始看日剧的原因和日期了。 《情书》: 雪,纯白的。相遇是命运,相知是时间,相见是对的时间对的人对的事。条件不足就只能是一页标签于书中。 《东京爱情故事》 《悠长假期》: 一直记得一个关于人生低谷的解释,虽然暂时找不到原句了。
生产环境中生命周期敏感的模调度 | fiking
摘要这篇文章给出了一个新的软流水方法,称为摇摆模调度算法(SMS)。 它生成的调度在起始间隔,寄存器需求,和阶段数量方面都是几乎最优的。摇摆模调度算法是一个启发式方法,计算开销比较低。这篇文章首先描述了相关技术,然后在通用 VLIW 架构上的 Pefect Club 基准测试套上评估它。SMS 和其它的启发式方法相比,表明了它获得的调度质量和编译时间方面都优于其它的。为了进一步探索 SMS
Linux命令学习 | fiking
https://fiking.github.io/2021/01/08/Linux-%E5%91%BD%E4%BB%A4%E5%AD%A6%E4%B9%A0/#more
1.帮助命令: 12man –help info 2.查看文本命令: 12cat more
几卷书 | fiking
https://fiking.github.io/2021/01/26/%E5%87%A0%E5%8D%B7%E4%B9%A6/#more
从前为了考试,把规定的名著都看了一遍,至少梗概是看完的。记忆中的四大名著都是上下两册的,除了《西游记》,前一册都是风清云秀,油烹烈火的,后一册,各种人没,变成悲剧。导致只喜欢看前一册,后一册看得少。《红楼梦》,石头记,像茶一样,多喝几次会上瘾,需要细品,个中滋味。
ASIPs 的指令集定义和指令选择 | fiking
摘要应用特定指令集处理器(ASIPs)是架构和指令集都针对特定应用领域优化过的现场或掩码可编程处理器。ASIPs 具有较高的自由度,因此越来越多地用于电信等竞争激烈的市场。但是,迄今为止,缺少适合于 ASIPs 设计和编程的 CAD 技术。在这篇文章中,提出了一种定义 ASIPs 优化微指令集的交互式方法。第二个问题是一个为预定义的ASIP 生成代码的指令选择方法。生成了一个指令集和数据路径模型的
简单且高效的静态单一赋值形式构造 | fiking
摘要 我们提出一个简单的 SSA 构造算法,它允许直接从抽象语法树或者字节码翻译到一个基于 SSA 的中间表示形式。这个算法不需要事先的分析,且保证在中间表示构造期间是 SSA 的形式。这样允许在构造期间应用基于 SSA 的优化。在完成后,中间表示是最小且纯的 SSA 形式。尽管它很简单,我们算法的运行时间与 Cytron 等人的算法相当。
一种高效计算单一静态赋值形式的方法 | fiking
Android 之 Android Studio 安装 | fiking
https://fiking.github.io/2021/01/08/Android-%E4%B9%8B-Android-Studio-%E5%AE%89%E8%A3%85/
弃用eclipse加Android SDK的搭建方式,直接下载android官方IDE,Android Studio。 在官网上下载完后直接安装就可以了。
git库创建和远程库关联 | fiking
AMD1700x+MSI(X370)VMware 报错 | fiking
早期 V8 代码构建 | fiking
https://fiking.github.io/2021/08/14/%E6%97%A9%E6%9C%9F-V8-%E4%BB%A3%E7%A0%81%E6%9E%84%E5%BB%BA/#more
前言 当前版本的V8代码比较庞大,不便于学习,所以将代码回退到早期的0.1.5版本,此时的代码量比较少,也能够构建起来。在构建中需要用到 Scons 构建工具,以及修改代码适配当前的 64 Bit 环境。
V8-early 之shell实现 | fiking
https://fiking.github.io/2021/08/15/V8-early-%E4%B9%8Bshell%E5%AE%9E%E7%8E%B0/#more
前言 0.1.5 版本的 V8 代码只是编译成静态库,缺少 shell 程序,不利与调试。本文档尝试在这个版本中加入 shell,实现JS文件的执行。
V8 代码下载及编译 | fiking
背景 为了学习和了解 Javascript Engine 的工作原理,在本地下载了V8的代码。
札记 | fiking
https://fiking.github.io/schedule/notes.html
2021规划自己的时间天边的月亮加加油写个总结与计划 百叶繁花各个职业入门贴,知识,秘史,逸事。微信小程序,书页集的形式。 初雪咖啡变得不苦了,又或是突然能接受这个味道了。想来人是会变的吧。可不变的是依旧会让人失眠。风雪夜归人,今夜雨夹雪,年岁前第一场看得见的雪。风吹得冰冰凉凉的。 决绝经历多了,就会遇到各种事情,每天卡着点上班,然后迟到,演变成惯性,不可收拾。本以为做好充足的准备,还是咯噔一下,
Pstore dmesg read篇 | fiking
https://fiking.github.io/2021/01/08/Pstore-dmesg-read%E7%AF%87/
当系统重启后,可以把数据从pstore中读出来,并创建文件节点,提供用户接口来获取文本数据。 12345678static int ramoops_probe(struct platform_device * pdev){ /* 从pstore中取出数据 */ err = ramoops_init_przs(dev, cxt, &paddr, dump_mem_sz);
面试经历--蚂蚁金服篇 | fiking
背景 八月份开始了蚂蚁金服的面试,岗位还是编译器虚拟机相关的。
Hexo blog 搭建 | fiking
DWARF 调试格式简介 | fiking
如果我们可以写出能保证正确运行,且从不需要调试的程序,将是非常美好的。直到太平的那天,正常的编程周期将涉及编写程序,编译它,执行它,然后调试它的(有点)令人害怕的祸害。一直重复直到程序如预期的工作。 通过插入代码打印选定的感兴趣的变量的值是可以调试程序的。确实,在一些场景下,如调试内核驱动,这个可能是首选的方法。这存在一个低级别的调试器允许单步通过执行程序,一条一条指令的,二进制的显示寄存器和内存
Adaption-Optimization-for-SELF:Reconciling-high-performance-with-exploratory-programming 论文翻译 | fiking
前言 为了增加虚拟机方面的理论知识,开始了虚拟机相关的论文翻译和学习。先制定个伟大的目标,前期每周一篇翻译,后续在根据学习情况进行论文的总结精炼。 开篇文章为 Urs Hölzle 1994年的博士论文《Adaption Optimization for SELF: Reconciling high performance with exploratory programming》。根据网上
超长指令字架构和ELI-512 | fiking
摘要用激进的称为轨迹调度的技术编译普通的科学应用程序,我们为并行机器生成代码,其运行这些程序将会比等价的顺序机器来得快 — 我们期望是 10 到 30 倍快。 轨迹调度为称为超长指令字架构的机器生成代码。在超长指令字机器中,许多静态调度,紧密耦合,和细粒度的操作都是在单指令流里并行执行的。VLIW 是一些当前架构的并行扩展。 这些现存的架构从未突破基本的性能屏障。它们能从并行中获得的加速比从没有超
POJ 2406 | fiking
https://fiking.github.io/2021/01/08/POJ-2406/
Power String这道题的大意是: 给出若干字符串,求每个字符串的最小构成子串(从字符串的头开始),即由该子串不断重复能构成所给出的字符串。
分割线之2021 | fiking
https://fiking.github.io/2021/01/08/%E5%88%86%E5%89%B2%E7%BA%BF%E4%B9%8B2021/
用了12个小时大致整理下之前的资料,搬迁到当前Blog中,用于装点门面。待续…..
美剧小记录 | fiking
https://fiking.github.io/2021/01/13/%E8%AE%B0%E7%BE%8E%E5%89%A7/#more
好像也看过好多东西,各种剧啊,书啊,游戏之类的,也没怎么整理过,基本都忘得好多了。就从美剧开始再整理一波吧。不用思考,码码就行。 五六年了吧,从第一部剧到现在,感觉过了好久,已经想不起是哪一部了。先写写剧名了。
回望2021 | fiking
https://fiking.github.io/2022/02/07/%E5%88%86%E5%89%B2%E7%BA%BF%E4%B9%8B2022/#more
拖到春节假期的最后一天写一写去年的总结。
面试经历--腾讯篇 | fiking
背景 有个猎头一直在问是否要出去面面试之类的,在闲下来之后,本着出去试试水,看看外面的世界和自己当前的水平,就答应的去面试了下。在6月份试着面试了腾讯的OpenJDK部门的岗位。准备不是很充分,加上线上面试,电脑环境还出现了些问题,导致面试过程比较尴尬,总体上整体表现不良。结果是意料中的不通过。
记二次元 | fiking
https://fiking.github.io/2021/01/08/%E8%AE%B0%E4%BA%8C%E6%AC%A1%E5%85%83/
《火影忍者》:小时候唯一的动画光碟的。 《未闻花名》 《风平浪静的明天》
全局值标号和冗余计算 | fiking
简介之前大部分的冗余消除算法都可以分为两类。词法算法处理整个程序,但是它们只能识别词法完全相同表达式的计算的冗余,这里说的表达式词法完全相同指的是,将完全相同的运算符应用于完全相同的操作数。另一方面,值标号算法,可以识别词法不同但肯定会计算相同的值的表达式间的冗余。这是通过给表达式赋一个叫值编号的特殊符号的名称来完成的。如果两个表达式的操作数的值编号完全相同,且应用于表达式的操作符完全相同,则表达
| fiking
https://fiking.github.io/google40b4ace268603b53.html
google-site-verification: google40b4ace268603b53.html
分割线之2021 | fiking
https://fiking.github.io/2021/01/09/%E5%88%86%E5%89%B2%E7%BA%BF%E4%B9%8B2021/
用了12个小时大致整理下之前的资料,搬迁到当前Blog中,用于装点门面。待续…..
CHESS:嵌入式 DSP 处理器的可变目标代码代码生成 | fiking
摘要这章介绍 CHESS,一个定点 DSP 处理器的可变目标代码生成环境。CHESS 解决了一系列的商业特定应用领域的处理器,它们越来越广泛地应用在通信,语音和音频处理中的嵌入式应用中。CHESS 是基于混合的行为/结构处理器表示模型的,它可以解释许多的架构特性,典型的如定点 DSP 处理器。此外,这个代码生成器采用了一系列高效的优化技术。这些特性产生了高度优化的机器码。
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.