Khronos 简介 2014年12月 Neil Trevett Khronos 主席 NVIDIA移动生态系统副总裁 @Neilt3d
Total Page:16
File Type:pdf, Size:1020Kb
Khronos 简介 2014年12月 Neil Trevett Khronos 主席 NVIDIA移动生态系统副总裁 @neilt3d © Copyright Khronos Group 2014 - Page 1 为什么我们需要标准? • 标准是交互操作界面 - 他们实现了社群的交流和独立创新 • 以低成本地方式打造更强的用户体验,以创建巨大的市场 - 不要因毫无价值的功能碎片而减缓发展 • E.g. 无线和IO标准 - GSM/EDGE, UMTS/HSPA, LTE, IEEE 802.11, Bluetooth, USB … 通过扩展设备性能,标准着带动市 场的增长 © Copyright Khronos Group 2014 - Page 2 Khronos 将软件链接到芯片 • 开放组织为硬件加速创建开源标准API - 欢迎所有公司加入 – 众多国际成员企业 • 定义每个平台都需要的低水平芯片界面 - 图形、计算、多媒体、视觉、传感和相机处理 • 承诺将为整合业界带来免版税规范 - 不断更新的IP框架保护会员权益和标准 • 非盈利组织 - 会员费仅用于支付组织运营和工程开发费用 • 创建并发布API规范和一致性测试 - 以实现跨厂商可移植性 • 强大的业界投入 - 业界专家的数百人年投入 Silicon 每天都有数十亿人在使用Khronos的API Software © Copyright Khronos Group 2014 - Page 3 BOARD OF PROMOTERS Over 100 members worldwide Any company or university welcome to join © Copyright Khronos Group 2014 - Page 4 http://accelerateyourworld.org/ © Copyright Khronos Group 2014 - Page 5 现实世界中的标准 标准化的最佳时机? 厂商间差异化毫无价值 – 碎片不断增加 达尔文业界还在实验着什么行得通什 – 标准化的目标不断清晰 么行不通 有业界设计 由业界定义 业界的实验和设计速度迟缓且不够集 业界对标准化的内容是赞同的 – 共同为 中关注 各种观点定义高效的解决方案 一个不好的标准将扼杀创新并引起商 一个好的标准可以实现执行创新 业化 通过实际考验的流程可以加速高效生态系统的发展 通过实际考验的IP框架保护了市场中会员IP和规范本身 一个业界的平台将所有企业聚集在一起共同进行高效的芯片技术创新 © Copyright Khronos Group 2014 - Page 6 Khronos的参与价值 在产品开发之 在行业标准的 在草拟规范 前提前了解未 创建中拥有发 的同时开发 产品与全球市场需 来行业技术发 言权,使其满 产品,获得 求和趋势与时俱进 展趋势 足自己业务的 先机市场 需求 会员公司将比非会员 公司提早推出产品 为未来芯片加速方面搜集 规范草本仅对 公开发布规范和一 非会员公司 行业需求 Khornos会员开放 致性测试 发布产品 实践证明,Khronos的标准流程在未来硬件加速性能 方面迅速地引起共鸣,有效地创建了新的市场机遇。 © Copyright Khronos Group 2014 - Page 7 IP政策,采用&一致性,工作组流程 注:以下内容仅供参考。具体法律相关信息请参考Khronos会员协议(Khronos Membership Agreement)、Khronos采用者协议(Khronos Adopters Agreement )和Khronos商标标识指导(Khronos Trademark Guidelines) © Copyright Khronos Group 2014 - Page 8 规范开发阶段 接受来自任何会员企业的工作 接受来自任何会员企业的设计 不再有任何核心规范变动 范围项目书 项目书 规范的早期版本 Specification 搜集需求 对需求进行讨论和投票 规范开发 Ratification 决定开发新版本 对新规范版本的工作范围 工作组最终投票通过 最终董事会投票通过后, 达成一致 规范公开发布 任何规范版本扩展的项目书可以在任何时间提交和通过 - 厂商扩展 – 无需批准– 但是Khronos仍要制定registry key - 多厂商扩展 – 无需批准 –但是Khronos仍要制定registry key - Khronos 扩展 – 需要工作组批准 – 需完成规范批准和IP许可 © Copyright Khronos Group 2014 - Page 9 Working Group 投票决策流程 长期良好的会员企业可以参与投票 在过去的三次工作组会议中至少参加两次 一家公司一个投票权 无论会员类型、公司规模或参会人数 公司可以通过出席会议或邮件投票表示同意、否决或弃权 多数通过即非弃权投票超过66% 任何会员企业可以提交设 最终批准投票要求达到3/4大多数同意 计项目书 Proposal 决策可以通过邮件列表或者电话会 Proposal 重复过程 议完成 工作组组长要确保所有 项目书 项目书都被放到会议议 程中 邮件列表/文件 100% No 工作组 讨论 投票? 库 一致同意? 一旦项目书被发出,工作组 Yes 的全部成员可以看到项目书 Yes 项目书需要由66%非弃 No 权票通过 通过 否决 工作组接受项目书 可以通过工作组投票决 定重新进行讨论 © Copyright Khronos Group 2014 - Page 10 标准批准流程 董事会将审核规范的完整性: • 2个独立的执行(1个是扩展) • 一致性测试和采用项目 工作组组长发送修改备注(redline)和完 会员查看规范IP列表。在此期间, • 标志和标识 成版(clean)发起者会员(Promoters) 会员可以提出排除证书以排除根 • Khronos流程中从始至终都是一个董事会成员公 和全部会员企业。这是规范批准流程的起 本IP。 司一个投票权 点。自此不可以对规范的功能再进行任何 修改。 将不可以再提出IP排除证 每个公司有一 书 个投票权 Specification Working Group 董事会批准投 规范开发 工作组批准投票通过 批准期间(42天) 规范发布 Development Ratification vote 票 未通过的规范将会被返回工作组 规范通过,批准发布 IP许可启动 © Copyright Khronos Group 2014 - Page 11 Khronos IP 框架- 平衡的保护机制 Khronos 会员同意不会对其他会员或者采用者的公开规范执行一致性提出IP方面诉讼 没有执行IP许可 会员可以拒绝参加某些工作 - 只是规范中涉及的IP 组 排除IP – 具体指明的产权可以被 排除在共同许可之外 IP 许可 许可只会发给通过 Khronos规范一致性测试 只有基础IP会被许可(不涉及 的执行 商业部分) 通常IP许可范围很窄 但是这些是保护规范在业界中使用所必须的IP © Copyright Khronos Group 2014 - Page 12 Khronos 一致性流程 • Khronos规范的执行者必须是采用者并通过一致性测试 - 否则不会被IP框架保护并且不被允许使用商标标识! • Khronos的每个API都有采用者计划 - 仅仅通过支付很少的费用,采用者计划可以获得完整的测试和商标使用许可 上传测试结果到 公司执行采用者协议并 在产品上接入并 测试结果通过审核后,该产品将可 公司执行Khronos的 Khronos的网站上。接 支付费用 执行测试以生成 以使用Khronos的商标并被罗列在 规范,希望使用其商 受来自会员和采用者 (不限产品数量) 测试结果 Khronos的网站上 标 同行的审核 如:“此产品采用 OpenGL ES” 带有限制条件的商标使 完全地使用标识 完全地使用 采用者优势 用(不是标识logo), 和商标,只需简 标识和商标 需要进行文字声明测试 单的相关声明 状态 OpenGL ES ™ © Copyright Khronos Group 2014 - Page 13 采用费用 可以采用任何版本。对较新版 本的采用将涵盖所有之前更早 对于部分API,如果已经采 的版本。 用了较早的版本,可以在采 一笔采用者费用可以提交使用 用新版本标准时享受折扣。 该版本规范的无数个产品 会员企业可以享受采用项目 费用折扣! © Copyright Khronos Group 2014 - Page 14 一致性报告与验证 您的客户可以在Khronos网站上验 证您的产品的一致性测试结果, 同时您的产品是被允许使用logo 的,并受到共同IP许可的保护 注:一家公司的多个OpenGL ES一 致性测试提交 – 一个产品系列 一个一致性测试 Khronos有关于如何定义一个测试提交可以覆盖 哪些类似产品范围非常具体的条文。具体内容 参考一致性流程文件(Conformance Process Document) © Copyright Khronos Group 2014 - Page 15 业界食物链中的采用者关系 每个执行和推出一个产品的公司必 须是采用者,并通过一致性测试后才 可以使用logo和参加共同IP许可 IP 块 被使用在 SOC 被使用在 设备 例子1: 公司 A 公司 B 公司 C = 3个采用费用, 3个测试提交 例子2: 公司 A 公司 A 公司 A = 1 个采用费用, 1个测试提交 为提高效率,如果其产品是被包含在内的,上述例子总的公司A、B、 C可以是指其他的公司提交测试,但是他们必须是付费的采用者并 公司A不是将其IP或SOC作为单独产品出售,所以 提交其他公司的测试结果,以保证其被覆盖在IP和商标标识许可内 只有其最终设备需要通过一致性测试 © Copyright Khronos Group 2014 - Page 16 Khronos 标准 3D Asset Handling - 3D authoring asset interchange - 3D asset transmission format with compression 视觉计算 - 3D 图形 - 异构并行计算 超过百家企业共同定义免版税API,将软件链接到 芯片 HTML5中的加速 - 浏览器上的3D – 无插件 - JavaScript的异构计算 传感处理 - 视觉加速 - 相机控制 - 传感融合 © Copyright Khronos Group 2014 - Page 17 Access to 3D on Over 2 BILLION Devices 1.9B Mobiles / year 300M Desktops / year Windows, Mac, Linux 1B Browsers / year Source: Gartner (December 2013) © Copyright Khronos Group 2014 - Page 18 Continuing OpenGL Innovation Bringing state-of-the-art OpenGL 4.5 functionality to cross- platform graphics OpenGL 4.4 OpenGL 4.3 OpenGL 4.2 OpenGL 4.1 OpenGL 3.3/4.0 OpenGL 3.2 OpenGL 3.1 OpenGL 2.0 OpenGL 2.1 OpenGL 3.0 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 DirectX DirectX DirectX DirectX DirectX DirectX 9.0c 10.0 10.1 11 11.1 11.2 © Copyright Khronos Group 2014 - Page 19 What is new in OpenGL 4.5? • Direct State Access (DSA) - Object accessors enable state to be queried and modified without binding objects to contexts - efficiency and flexibility for applications, tools and middleware • Flush Control - Application can control flushing of pending commands before context switching – enabling high-performance multithreaded applications • Robustness - Providing a secure platform for applications such as WebGL browsers e.g. preventing a GPU reset affecting any other running applications • DX11 emulation features - Easier porting of applications between OpenGL and Direct3D • OpenGL ES 3.1 API and shader compatibility - Enables development and execution of the latest OpenGL ES applications on desktop systems © Copyright Khronos Group 2014 - Page 20 OpenGL ES and WebGL Roadmap 32-bit integers and floats NPOT, 3D/depth textures Programmable Texture arrays Compute Shaders Fixed function Shaders Multiple Render Targets Pipeline Driver Silicon Silicon Driver Update Update Update Update 2003 2004 2007 2012 2014 1.0 1.1 2.0 2011 3.0 3.1 Spec at GDC March 2014 Standard in Android L WebGL 1.0 WebGL 2.0 Under Development WebGL 2.0 - Open Review http://www.khronos.org/registry/webgl/specs/latest/2.0/ © Copyright Khronos Group 2014 - Page 21 OpenGL ES 3.1 Goals • Bring developer requested features from desktop OpenGL 4 to mobile - Advanced features, modern programming styles - Higher performance with lower overhead • Headline features - Compute Shaders and Draw-Indirect - Compute shaders can create geometry or other rendering data - …and also the draw commands needed to render them - Offload work from CPU to GPU – critical for mobile perf and power • Run on OpenGL ES 3.0 hardware – expose hidden capabilities of shipping devices - Enable very rapid adoption across the industry • Better looking, faster performing apps! © Copyright Khronos Group 2014 - Page 22 OpenGL ES 3.1 Adoption Momentum • Widespread industry participation to release specification in March 2014 - Tool and Game Engine Developers, GPU Designers, SoC Vendors - Platform Owners, End Equipment Makers, Middleware ISVs • Khronos launched the OpenGL ES 3.1 Adopters program in June 2014 - Broad set of conformance tests to ensure reliable cross-vendor operation • Google announced that OpenGL ES 3.1 is standard in Android L - At Google IO June 2014 • First wave of GPU vendors conformant in July 2014 - ARM, Imagination Technologies, Intel, NVIDIA, Qualcomm, Vivante - http://www.khronos.org/conformance/adopters/conformant-products#opengles © Copyright Khronos Group 2014 - Page 23 Google Android Extension Pack (AEP) • Set of extensions for OpenGL ES 3.1 - Accessible through a single query - Functionality to support AAA games • Functionality from desktop OpenGL - Tessellation - Improves the detail of geometry rendered - Geometry shaders - Add details and shadows - ASTC Texture Compression - High quality texture compression • Enables premium graphics effects - Deferred rendering - Physically-based shading - High Dynamic Range tone mapping - Global Illumination and reflection - Smoke and particle effects Epic’s Rivalry demo using full Unreal Engine 4 Running in real-time on NVIDIA Tegra K1 with OpenGL ES 3.1 + AEP https://www.youtube.com/watch?v=jRr-G95GdaM © Copyright Khronos Group 2014 - Page 24 Next Generation OpenGL Initiative Platform Diversity and • Ground up re-design of API for high-efficiency access to need for cross-platform graphics and compute on modern GPUs and platforms API standards increasing • Design from first principles – even if means breaking compatibility with traditional OpenGL • An open-standard, cross-platform 3D+compute API for the modern era After twenty two years – the architecture of GPUs and platforms has radically changed © Copyright Khronos Group 2014 - Page 25 Ground-up Explicit API Redesign Traditional OpenGL Next Generation OpenGL Originally architected for graphics workstations Matches architecture of modern platforms with direct renderers and split memory including mobile platforms with unified memory, tiled rendering Driver does lots of work: state validation, dependency tracking, Explicit API – the application has direct, predictable control error checking. Limits and randomizes performance over the operation of the GPU Threading model doesn’t enable generation of graphics Multi-core friendly with multiple command queues commands in parallel to command execution that can be created in parallel Syntax evolved over twenty