顶点这边

我看powerVR也就是说苹果也是如此

还有mali

目前看这俩平台的顶点数据都有这样一步优化

一个render pass的所有顶点shade的时候 先算pos 用这个结果拿最上一层顶点数据 只对这部分顶点做其它数据varyings的计算

这样cull那些顶点都不需要计算除了pos外的其它数据了

它接下来的说法我是比较困惑的

他说 这部分顶点数据是交错放置的

所有postion顶点数据pack一个buffer

其它non-pos数据包一起 这部分可以去ue里确认下 这是上层做的事情 还是硬件已经完成了的 值得一试在mali

这是个好事情 至少巨大的vertex 带宽数据这部分 少了好多 至少mali是这样 估计apple也是如此的

IDVS的数据在mali上是可以测试的 用streamline我们可以得到多少顶点 只做了pos (被剔掉了 )不用做varyings的计算

根据这下面给的建议来看 是要把 数据分开包的 这个很值得做了

-Called glBindFramebuffer () to change the theGL_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER target target
– Called glFramebufferTexture *() or  glFramebufferRenderbuffer ()  to change the attachments
– Called eglSwapBuffers ()
– Called glFlush () or glFinish ()
– Created a glFenceSync () then called glClientWaitSync () to wait

这几个opengles会end render pass

用这几个做load

glClear () , glClearBuffer *() , glInvalidateFramebuffer()

用glInvalidateFramebuffer()做store

配合Framebuffer fetch服用吧

https://community.arm.com/developer/tools-software/graphics/b/blog/posts/mali-midgard-family-performance-counters

https://community.arm.com/developer/tools-software/graphics/b/blog/posts/mali-bifrost-family-performance-counters

powervr apple 和mali

应该都做了 把pos先算的事情

然后把顶点数据里的pos都合到一个buffer上增加了read时的cache命中 应该并不是硬件做这件事情的开关 但肯定要这样做 这样效率高

然后ue我估计做了

unity没做

但是新出的DOTS

在ecs这边的原理和合并顶点数据是一样的

在renderpipeline这边似乎有提交

https://forum.unity.com/threads/dots-render-pipeline.752198/

https://github.com/Unity-Technologies/ScriptableRenderPipeline/commits/dots-instancing

mali --mobile platform GPU arch about vertex pipeline的更多相关文章

  1. 3.1 - Apps or metadata that mentions the name of any other mobile platform will be rejected

    3.1 - Apps or metadata that mentions the name of any other mobile platform will be rejected3.1 Detai ...

  2. 安卓平台下ARM Mali OpenCL编程-GPU信息检测(转)

    对于ARM Mali GPU,目前是支持OpenCL1.1,所以我们可以利用OpenCL来加速我们的计算. 一直以来,对于Mali GPU的OpenCL编程,一直没有环境来测试.好不容易弄到一个华为M ...

  3. What is mobile platform?

    高屋建瓴 From Up to Down Outside into inside The Internet Of Things. http://wenku.baidu.com/view/5cdc026 ...

  4. 移动匿名支付购物方案 A Lightweight Anonymous Mobile Shopping Scheme Based on DAA for Trusted Mobile Platform

  5. Mali GPU OpenGL ES 应用性能优化--測试+定位+优化流程

    1. 使用DS-5 Streamline定位瓶颈 DS-5 Streamline要求GPU驱动启用性能測试,在Mali GPU驱动中激活性能測试对性能影响微不足道. 1.1 DS-5 Streamli ...

  6. 剖析虚幻渲染体系(12)- 移动端专题Part 2(GPU架构和机制)

    目录 12.4 移动渲染技术要点 12.4.1 Tile-based (Deferred) Rendering 12.4.2 Hierarchical Tiling 12.4.3 Early-Z 12 ...

  7. PatentTips - Indexes of graphics processing objects in GPU commands

    BACKGROUND A graphics processing unit (GPU) is a specialized electronic device that is specifically ...

  8. GPU端到端目标检测YOLOV3全过程(上)

    GPU端到端目标检测YOLOV3全过程(上) Basic Parameters: Video: mp4, webM, avi Picture: jpg, png, gif, bmp Text: doc ...

  9. A trip through the Graphics Pipeline 2011_01

    It’s been awhile since I posted something here, and I figured I might use this spot to explain some ...

随机推荐

  1. [转帖]持久化journalctl日志清空命令查看配置参数详解

    持久化journalctl日志清空命令查看配置参数详解 最近 linux上面部署服务 习惯使用systemd 进行处理 这样最大的好处能够 使用journalctl 进行查看日志信息. 今天清理了下 ...

  2. C++ 日志库 boost::log 以及 glog 的对比

    日志能方便地诊断程序原因.统计程序运行数据,是大型软件系统必不可少的组件之一.本文将从设计上和功能上对比 C++ 语言常见的两款日志库: boost::log 和 google-glog . 设计 b ...

  3. 通过jquery触发select自身的change事件

    ###通过jquery触发select自身的change事件 1.通过js来去触发select的change事件 代码如下:包含了html部分和js部分 //html部分 <select cla ...

  4. 使用Laravel 和 Vue 构建一个简单的SPA

    本教程是作者自己在学习Laravel和Vue时的一些总结,有问题欢迎指正. Laravel是PHP的一个框架,Vue是前端页面的框架,这两个框架如何结合起来构建一个SPA(Single Page Ap ...

  5. PCA降维笔记

    PCA降维笔记 一个非监督的机器学习算法 主要用于数据的降维 通过降维, 可以发现更便 于人类理解的特征 其他应用:可视化:去噪 PCA(Principal Component Analysis)是一 ...

  6. java. util. concurrent. atomic

    一.原子更新基本类型 AtomicInteger AtomicBoolean AtomicLong 二.原子更新数组 AtomicIntegerArray AtomicLongArray Atomic ...

  7. 前端移动端的rem适配计算原理

    rem是什么? rem(font size of the root element)是指相对于根元素的字体大小的单位.简单的说它就是一个相对单位.看到rem大家一定会想起em单位,em(font si ...

  8. 官网实例详解-目录和实例简介-keras学习笔记四

    官网实例详解-目录和实例简介-keras学习笔记四 2018-06-11 10:36:18 wyx100 阅读数 4193更多 分类专栏: 人工智能 python 深度学习 keras   版权声明: ...

  9. 使用SplFixedArray创建固定大小的数组

    PHP在定义数组的时候不用像C或Java一样定义数组大小,PHP数组可以根据我们的需要增长或收缩.但这种灵活性在内存使用方面带来很大的不便. 而PHP中可以使用SplFixedArray创建固定大小的 ...

  10. hdu 4333 扩展kmp+kmp重复字串去重

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4333 关于kmp next数组求最短重复字串问题请看:http://www.cnblogs.com/z ...