http://www.opengpu.org/forum.php?mod=viewthread&tid=40&highlight=Attila
|
  
-
注冊时间
-
2007-6-9
-
积分
-
408
|
先上几张 ATTILA GPU Streamer Unit 的图(持续更新,呵呵。。。)
[ 本帖最后由 octane3d 于 2007-8-10 01:38 编辑 ] |
|
|
|
|
|
|
|
|
|
|

-
注冊时间
-
2007-8-3
-
积分
-
2
|
|
|
|
|
|
|
|
|
|
|

-
注冊时间
-
2007-9-10
-
积分
-
26
|
|
请问您的图是用什么软件画出来的,我就viso画的太丑了 |
|
|
|
|
|
|
|
|
|
|
   
-
注冊时间
-
2009-10-26
-
积分
-
1902
|
|
正在看Attila的论文,遗憾的是他们的学位论文都是Spanish |
|
|
公开促进交流;交流促进提高;上传资料坚持0阅读权限
|
|
|
|
|
|
|
|
 
-
注冊时间
-
2009-11-15
-
积分
-
156
|
|
闲聊一句,诚如IC.expert老大说,这东西距硬件太远了,可是我越来越认为它的设计思想有非常多能够借鉴的地方,模块的划分对于软件开发有非常好的參考价值(尤其对于model的设计),模块的内聚性非常高,对外的接口统一,利用signal的抽象巧妙的实现了非常多硬件的特性,比方bandwidth,latency,pipe机制.....自己去实现这样一套东西,是非常难的,在这一套框架的基础上,能够自由实现多种算法,是一个非常好的平台。 |
-
1
查看所有评分
-
|
|
|
|
|
|
|
|
|
|
 
-
注冊时间
-
2009-11-15
-
积分
-
156
|
|
IC老大,硬件,我一点不懂了,我的理解主要是基于软件的角度。当时是想了解下图形chip内部的运作流程,又苦于找不到资料,才粗略地看了看attila,你说的pipeline stage之间的耦合,是指什么,是否能详细讲讲,给俺们新手也普及下。呵呵 |
-
1
查看所有评分
-
|
|
|
|
|
|
|
|
|
|
 
-
注冊时间
-
2009-11-15
-
积分
-
156
|
多谢老大这么高速的回帖,明确了你的说意思了。老大是说一个单元(比方streamer unit)内部各个模块(streamer fetch, Loader, commit.....)之间的独立性不强。
attila在我看来定位应该是一个cmodel,而不是RTL model, 也就是说不是面向硬件实现的。我个人认为假设要设计一个Graphic pipeline,首先要从功能上进行划分,划分成各个unit,就像attila一样,有streamer unit , clipper , Memory controller, PrimitiveAssebly, Rasterizer , Shader.....) ,Unit的内聚性要好(高内聚必定导致独立性不强),Unit之间的耦合降到最低.Attila 用signal的抽象机制实现了unit之间的低耦合(相当于Unit与Unit之间引入了一层抽象),Unit的行为变得更加模式化,状态推断-->接收read
signal--->做对应处理--->Write Signal 这样既统一了unit之间的接口,也减少了unit之间的相关性,缺点是每一个cycle都有一堆一堆的signal,也就是老大说的一堆指针送来送去。
从程序的结构来分析,Simproject那部分仅仅是个壳,真正的详细实现分离到emul那个project中,软件设计上达到了功能和实现的分离。所以说attila的构架设计,从软件上看,我认为还是有非常多可取之处的。接触时间短,理解不深,还请老大和各位高手批评指正错误之处,谢谢。
另外,也想知道要做到硬件实现上的高效性,详细怎样做,构架怎么设计?再次谢谢!:) |
-
1
查看所有评分
-
|
|
|
|
|
|
|
|
|
|
 
-
注冊时间
-
2009-11-15
-
积分
-
156
|
个人看法,仅供參考啊。如有不正确请批评指正。
软件project中,当我们设计软件之初,要进行框架设计,为了我们的设计灵活,更具有弹性,我们常常思考的是将变化的部分和不会变化的部分分开。这样能够让软件开发更规范,更易于扩展,更easy维护,设计模式的非常多思想都源于此。
那么,对于一个graphic pipeline的设计,从软件的角度来说,什么是不变的,什么是常常变化的?
针对attila来说,pipeline的功能,数据的传输和逻辑的控制是不变的,详细来说,就是unit 的功能(比方PrimitiveAssembly是图元装配,但详细怎么装配呢?),unit与unit之间signal的连接建立,数据经由signal的传输,unit状态的控制,read signal and wirte signal .....这些是框架上的东西,是不变的。 变化的是功能的实现,也就是算法,attila的rasterizer就是由两种不同的算法来实现相同的功能。因此,要将功能和不同的算法实现相分离,而不是纠结在一起。这也是Simproject(功能)和emul(不同算法)project的由来。
attila的这样的思想,源自于一种叫strategy的策略模式,策略模式定义了一组算法簇,分别封装起来,让它们之间能够互相替换,此模式让算法的变化独立于算法使用的客户,也就是功能和实现的分离。 |
-
1
查看所有评分
-
|
|
|
|
|
|
|
|
|
|
 
-
注冊时间
-
2009-9-18
-
积分
-
67
|
|
想问各位大牛:Attila的架构和如今的主流GPU的架构一致吗? |
|
|
|
|
|
|
|
|
|
|
 
-
注冊时间
-
2011-11-16
-
积分
-
120
|
ic.expert 发表于 2010-10-30 17:25 
Attila仅仅是一个模拟器,既然是模拟器呢,那主要是给架构师做分析用的,模拟器的架构和硬件架构区别还是 ...
论文和code哪里找的到?
|
|
|
|
|
|
|
|
|
|
|
  
-
注冊时间
-
2009-5-15
-
积分
-
429
|
ic.expert 发表于 2010-10-30 17:25 
Attila仅仅是一个模拟器,既然是模拟器呢,那主要是给架构师做分析用的,模拟器的架构和硬件架构区别还是 ...
ic大能不能举个样例,说说架构师做的分析是怎样利用模拟器的,模拟器和硬件的区别主要是在哪些方面,是什么原因造成了这些区别 |
|
|
|
|
|
|
|
|
|
|
   
-
注冊时间
-
2011-2-19
-
积分
-
1020
|
cxp2760 发表于 2010-10-28 16:31 
想问各位大牛:Attila的架构和如今的主流GPU的架构一致吗?
应该比較过时了吧。似乎仅仅是 DX9 level的东西 |
|
|
|
|
|
|
|
|
|
|
 
-
注冊时间
-
2011-12-29
-
积分
-
196
|
学习,学习  |
|
|
|
|
|
|
|
|
|
|
 
-
注冊时间
-
2012-7-20
-
积分
-
73
|
|
|
|
|
|
|
|
|
|
- GPU keylogger && GPU Based rootkit(Jellyfish rootkit)
catalog . OpenCL . Linux DMA(Direct Memory Access) . GPU rootkit PoC by Team Jellyfish . GPU keylogg ...
- 『TensorFlow』分布式训练_其二_单机多GPU并行&GPU模式设定
建议比对『MXNet』第七弹_多GPU并行程序设计 一.tensorflow GPU设置 GPU指定占用 gpu_options = tf.GPUOptions(per_process_gpu_mem ...
- GPUtil是一个Python模块,使用nvidia-smi从NVIDA GPU获取GPU状态
GPUtil是一个Python模块,使用nvidia-smi从NVIDA GPU获取GPU状态 一个Python模块,用于在Python中使用nvidia-smi以编程方式从NVIDA GPU获取GP ...
- Android studio GPU Monitor :GPU Profiling needs to be enabled in the device's developer options
Android studio GPU Monitor 在真机上不能使用,提示:GPU Profiling needs to be enabled in the device's developer o ...
- tensorflow中使用指定的GPU及GPU显存 CUDA_VISIBLE_DEVICES
参考: https://blog.csdn.net/jyli2_11/article/details/73331126 https://blog.csdn.net/cfarmerreally/arti ...
- (原)tensorflow中使用指定的GPU及GPU显存
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6591923.html 参考网址: http://stackoverflow.com/questions ...
- Unity Profiler GPU Usage(GPU使用情况)
一般情况下性能瓶颈都在CPU上,这儿也列举下几个常见的GPU耗时函数吧. 1 Render.Mesh 绘制网格面(没批处理的面) 2 Batch.DrawStatic 静态批处理 3 Batch.Dr ...
- tensorflow中使用指定的GPU及GPU显存
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 本文目录 1 终端执行程序时设置使用的GPU 2 python代码中设置使用的GPU 3 设置tensorflow使用的显 ...
- CUDA直方图实例=CPU+GPU(global)+GPU(shared)
项目打包下载链接 顺便批判下CSDN上传坑爹现象,好多次都是到了95%或者99%就不动了.我……
随机推荐
- Java就业前景怎么样?学了后好找工作吗?
不知道大家对Java就业前景了解多少.随着信息化的发展.IT培训受倒了越来越多人的追捧.在开发领域,JAVA培训成为了很多人的首选!JAVA应用广泛.JAVA培训就业前景良好. 眼下.尽管JAVA人才 ...
- JVM的参数详解(转)
12年毕业到先在处理第一年外这几年纯属于打酱油,当初自学Java然后就出来找工作了,还有第一家面试就通过了挺幸运的 但之后的这段时间一直是处于吃老本的状态.最近心情真的很不好,各种黄老邪!一直处于堕落 ...
- Android开发学习总结(五)——Android应用目录结构分析(转)
一.手动创建android项目 手动创建一个Android项目,命名为HelloWorld,命令如下: android create project -n HelloWorld -t 1 -p E:/ ...
- 【转】Android 避免APP启动闪黑屏(Theme和Style)
前几天Boss就反应说,机器每次启动程序都会闪一下黑屏,这个客户不接受.没办法,只能想想怎么解决,最后找到了下面的方法.闪黑屏的原因主要是我们启动Activity的时候,需要跑完onCreate和on ...
- 播放视频的框架Vitamio的使用问题
曾经用过这个牛逼的框架,后来又任意搞了下.发现播放不了视频了.搞了老半天才搞好,今天又随便整了下,发现又不行了.我勒个插! 如今最终又搞出来了,发现我总是把步骤搞错或少写了些东西 总的步骤: 一:导入 ...
- javascript滚动栏响应鼠标滑轮的实现上下滚动事件
实现鼠标滚动滚轮事件: <script type="text/javascript"><pre name="code" class=" ...
- 用于主题检测的临时日志(18506589-369d-4505-a204-3678db17eae5 - 3bfe001a-32de-4114-a6b4-4005b770f6d7)
这是一个未删除的临时日志.请手动删除它.(252f1b1e-5ce3-42a8-95da-bc0acbd4f637 - 3bfe001a-32de-4114-a6b4-4005b770f6d7)
- JSP通用7动作命令
JSP通用7动作命令 1.jsp:forward指令 运行页面转向.将请求处理转发到下一个页面 2.jsp:param指令 用于传递參数 3.jsp:include指令 用于动态引入 ...
- android怎么在launcher改动内置apk的icon
找到launcher下的IconCache中加入变量用来存储要改动apk的包名 及要改动成的icon private String[] className = {"com.google.an ...
- 随笔 - Internet缓存文件
Internet缓存文件 本文地址: http://blog.csdn.net/caroline_wendy 互联网上全部的使用记录, 图片, 音乐, 视频, 都会缓存在本地. 1. 位置: IE-& ...