2015年8月28日

[LeetCode] 21 - Merge Two Sorted Lists

摘要: Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists./** * Def... 阅读全文

posted @ 2015-08-28 10:54 tuituji 阅读(158) 评论(0) 推荐(0) 编辑

[LeetCode] 26 - Remove Duplicates from Sorted Array

摘要: Given a sorted array, remove the duplicates in place such that each element appear onlyonceand return the new length.Do not allocate extra space for a... 阅读全文

posted @ 2015-08-28 10:48 tuituji 阅读(209) 评论(0) 推荐(0) 编辑

[LeetCode] 20 - Valid Parentheses

摘要: Given a string containing just the characters'(',')','{','}','['and']', determine if the input string is valid.The brackets must close in the correct ... 阅读全文

posted @ 2015-08-28 10:42 tuituji 阅读(169) 评论(0) 推荐(0) 编辑

2014年11月30日

实现一个光线追踪器

摘要: 写一个光线追踪器是一个很有意思的事情,光线追踪器的原理很简单,但是却能生成真实感强的图片。使用bart场景写了一个光线追踪器,使用多线程和BVH加速,源码:https://github.com/tuituji/bart。生成的照片:cnblogs不能上传视频? 阅读全文

posted @ 2014-11-30 00:14 tuituji 阅读(578) 评论(0) 推荐(0) 编辑

2014年11月29日

编写一个操作系统内核

摘要: 学习操作系统最好的方式当然是实现一个系统内核。自己从零开始写一个完整的内核会消耗大量时间在一些小细节上。MIT 6.828课程“Operating System Engineering”就提供了很好的实现一个系统内核的素材,该课程最终实现一个完整的包含“内存管理”、“中断处理”、“进程调度”、“网络... 阅读全文

posted @ 2014-11-29 23:53 tuituji 阅读(721) 评论(0) 推荐(0) 编辑

编写COOL编译器

摘要: Coursera上面有Stanford的课程“Compilers”,该课程使用“龙书”作为参考书,并有一个编程项目,完成一个完整的编译器。这个编译器支持的语言称为COOL,是一个面向对象的用于教学的语言,支持完整的面向对象特性。COOL项目给出了一些基础源码,学生在这个基础源码上实现词法分析、语... 阅读全文

posted @ 2014-11-29 23:43 tuituji 阅读(1003) 评论(0) 推荐(0) 编辑

【原创】Linux环境下的图形系统和AMD R600显卡编程(11)——R600指令集

摘要: 1 低级着色语言tgsi OpenGL程序使用GLSL语言对可编程图形处理器进行编程,GLSL语言(以下高级着色语言就是指GLSL)是语法类似C的高级语言,在GLSL规范中,GLSL语言被先翻译成教低级的类汇编语言,然后被翻译成硬件特定的指令集。OpenGL体系管理委员会于2002年6月和2002... 阅读全文

posted @ 2014-11-29 23:25 tuituji 阅读(2518) 评论(1) 推荐(1) 编辑

【原创】Linux环境下的图形系统和AMD R600显卡编程(10)——R600显卡的3D引擎编程

摘要: 3D图形处理流水线需要流经多个硬件单元才能得到最后的渲染结果,流水线上的所有的硬件单元必须被正确编程,才能得到正确的结果。 总体上看,从图形处理流水线的源头开始,需要准备好vertex和index,在立即模式下,index可以直接编程在命令中,通过配置寄存器告诉GPU vertex buffe... 阅读全文

posted @ 2014-11-29 20:53 tuituji 阅读(3463) 评论(1) 推荐(1) 编辑

【原创】Linux环境下的图形系统和AMD R600显卡编程(9)——R600显卡的3D引擎和图形流水线

摘要: 1. R600 3D引擎 R600核心是AMD一款非常重要的GPU核心,这个核心引入了统一处理器架构,其寄存器和指令集同以前的GPU 都完全不同,对其编程也有比较大的区别。 图1显示了R600 GPU 核心的硬件逻辑图,R600 GPU 包含并行数据处理阵列(DPP array)、命令处理器、内... 阅读全文

posted @ 2014-11-29 16:30 tuituji 阅读(3178) 评论(0) 推荐(1) 编辑

【原创】Linux环境下的图形系统和AMD R600显卡编程(8)——AMD显卡DRM驱动初始化过程

摘要: 前面几个blog对DRM驱动、显卡的显存管理机制、中断机制都进行了一些描述,现在阅读AMD drm驱动的初始化过程应该会轻松许多。 下面是一AMD的开发人员编写的文章(先暂时放在这里,后续有时间再添加自己的看法)。Understanding GPUs from the ground upI g... 阅读全文

posted @ 2014-11-29 15:37 tuituji 阅读(3454) 评论(0) 推荐(1) 编辑

导航