K,K线,Candle蜡烛图。

T,技术分析,工具平台

L,公式Language语言使用c++14,Lite小巧简易。

项目仓库:https://github.com/bbqz007/KTL

国内仓库:https://gitee.com/bbqz007/KTL

CoreAnimation for Windows: https://github.com/bbqz007/xw

zqt5 一个超简单的Qt5窗口语法: https://github.com/bbqz007/zhelper-qt5Widgets

zqlite3 一个超简单的流式语法,整合封装Sqlite3 capis 与 SQL 跟 c/c++程序绑定:https://github.com/bbqz007/sqlite3zz

zgl 一个对OpenGL常规功能api重新抽象封装。

KTL提供一个c++14编译平台,用户可以使用c++14编辑自定义技术指标等。

用户可以使用crt常用函数,c++标准库容器以及算法,c++14特性编程。

本期更新内容

体验GPGPU。

1. OpenGL 3.0 FragmentShader

2. OpenGL 4.3 ComputeShader

3. Dx11 DirectCompute

OpenGL3D 添加了mesh示例。

OpenGL需要编写glsl版本的kernel,Dx11需要编写hlsl版本的kernel。(kernel指的是computational kernel)

vmware 16支持Dx11以及OpenGL4.1,如果使用vmware16只能体验1,3。

软件实现的mesa opengl 12版本只支持到OpenGL 3.0。而OpenGL 3.0是支持浮点Texture的最低版本。

GPGPU分两个时期。

以OpenGL 4.3为分水岭。这个版本开始支持compute shader,对应DX11的DirectCompute。只要硬件支持,只需要编写compute shader。

在这之前,人们需要使用fragment shader去完成计算任务。这个链接介绍基于OpenGL 3.x的GPGPU编程

在早期,人们利用fragment shader运算texture上的数据。并且fragment shader只能读取texture的数据,不能直接往texture写入数据,只能将结果写到framebuffer,然后再将结果从framebuffer复制到texture。终于发展出硬件支持的compute shader,可以直接将结果写到texture。思路还是一样,使用GPU的shader去运算texture的数据,将结果输出到texture。

所以抽象成4个概念:

1. Arrays = textures

2. Kernels = shaders

3. Computing = drawing

4. Feedback

最后的Feedback,可以理解成如何优化多阶流水,我们将任务分成加载,计算,输出,就像cpu指令一样,通过优化多阶流水提高吞吐提升速度。

另外还有一个概念就是全局不变量 Uniform。

是否使用了GPU就可以提升速度,如果你这样想,结果可能不会如你所愿。

GPU并不能简单地提升你所需要的运算速度。

GPU与CPU是异构两个Host,那么一个并不复杂也不庞大的运算任务,就必须徒劳经过CPU内存,CPU,总线,GPU内存,GPU shader运算,GPU内存,总线,CPU,CPU内存。

因此本次更新只能体验如何使用GPU来完成运算任务。

本次展示了如何使用OpenGL编写简单的GPGPU程序框架,以及使用GLSL编写运算kerenl。还有DX11的HLSL。

如何使用DX11编写简单的GPGPU程序框架,可以上微软文档官网查找如何编写DirectCompute。

本次更新的zgl,对Texture2D封装成一个搬运内存的对象GL3::GpuImage2D,可以alloc,copyFromCpuMemory,copyToCpuMemory。方便使用。

KTL 一个支持C++14编辑公式的K线技术工具平台 - 第七版,体验GPGPU。的更多相关文章

  1. KTL 一个支持C++14编辑公式的K线技术工具平台 - 第五版,支持sqlite3,全新sqlite3zz语法超简单使用sqlite3; 添加方差等统计函数。

    K,K线,Candle蜡烛图. T,技术分析,工具平台 L,公式Language语言使用c++14,Lite小巧简易. 项目仓库:https://github.com/bbqz007/KTL 国内仓库 ...

  2. KTL 一个支持C++14编辑公式的K线技术工具平台 - 第六版,支持OpenGL,3D上帝视角俯视K线概貌。

    K,K线,Candle蜡烛图. T,技术分析,工具平台 L,公式Language语言使用c++14,Lite小巧简易. 项目仓库:https://github.com/bbqz007/KTL 国内仓库 ...

  3. KTL 一个支持C++14编辑公式的K线技术工具平台 - 第四版,稳定支持Qt5编程,zqt5语法升级,MA函数提升性能1000%,更多公式算法的内置优化实现。

    K,K线,Candle蜡烛图. T,技术分析,工具平台 L,公式Language语言使用c++14,Lite小巧简易. 项目仓库:https://github.com/bbqz007/KTL 国内仓库 ...

  4. 一个支持DbFirst、ModelFirst和CodeFirst的数据库小工具DbTool

    DbTool 一个支持DbFirst.ModelFirst和CodeFirst的数据库工具. 简介 这是一个针对 SqlServer 数据库和 C# 开发语言的小工具,可以利用这个小工具生成数据库表对 ...

  5. 小白学Python(14)——pyecharts 绘制K线图 Kline/Candlestick

    Kline-基本示例 from pyecharts import options as opts from pyecharts.charts import Kline data = [ [2320.2 ...

  6. python 开发一个支持多用户在线的FTP

    ### 作者介绍:* author:lzl### 博客地址:* http://www.cnblogs.com/lianzhilei/p/5813986.html### 功能实现 作业:开发一个支持多用 ...

  7. SQL点滴14—编辑数据

    原文:SQL点滴14-编辑数据 数据库中的数据编辑是我们遇到的最频繁的工作,这一个随笔中我来总结一下最常用的数据编辑. select into 经常遇到一种情况是,我们希望创建一个新表,表中的数据来源 ...

  8. 在Office上怎么用MathType编辑公式

    随着无纸化的办公程序越来越深入普及到社会的各个层面,很多资料都是电子档.从前手写的内容全都转换到了电脑上.用Office办公时,有一个很大的问题,那就是其中的公式要怎么编辑? 从前用手写毫无困难,什么 ...

  9. 怎么让Word编辑公式又快又好

    现在很多办公学习都是在电脑中进行的.很多文件论文都是在Word中编写定稿以后再打印成册或者去投稿.毫无疑问,在Word中编辑各种各样的文字与符号是一项现在社会中非常必要的技能,而这其中一项就是对公式的 ...

随机推荐

  1. Java语言学习day05--7月2日

    今日内容介绍1.引用类型变量的创建及使用2.流程控制语句之选择语句 ###01创建引用类型变量公式 * A: 创建引用类型变量公式 * a: 我们要学的Scanner类是属于引用数据类型,我们先了解下 ...

  2. sqlmap源码分析(一)

    Sqlmap源码分析(一) 此次分析的sqlmap目标版本为1.6.1.2#dev 只对sqlmap的核心检测代码进行详细分析其他的一带而过 sqlmap.py文件结构 为了不让篇幅过长下面只写出了s ...

  3. Collection工具类

    Collection工具类: 集合工具类,定义除了存取以外的集合常用方法 方法: public static void reverse(List<?> list)   //反转集合中元素的 ...

  4. 联邦平均算法(Federated Averaging Algorithm,FedAvg)

    设一共有\(K\)个客户机, 中心服务器初始化模型参数,执行若干轮(round),每轮选取至少1个至多\(K\)个客户机参与训练,接下来每个被选中的客户机同时在自己的本地根据服务器下发的本轮(\(t\ ...

  5. Linux磁盘分区-mount挂载

    Linux磁盘分区类型 磁盘存储术语CHS head:磁头  磁头数=盘面数 track:磁道  磁道=柱面数 sector:扇区,512bytes cylinder:柱面 1柱面=512*secto ...

  6. web渗透学习目录

    一,基础学习 01.基础学习 [[编码总结]] [[JSON三种数据解析方法]] [[js加密,解密]] [[Internet保留地址和非保留地址.内网和公网.VNC和UltraVN]] 代理 [[S ...

  7. 关闭BottomSheetDialogFragment从后台返回后的动画

    问题 显示BottomSheetDialogFragment后.将当前应用放于后台,切换到其他APP,然后再返回当前应用.此时会看到BottomSheetDialogFragment从下而上的动画再次 ...

  8. .NET混合开发解决方案14 WebView2的基本身份验证

    系列目录     [已更新最新开发文章,点击查看详细] WebView2控件应用详解系列博客 .NET桌面程序集成Web网页开发的十种解决方案 .NET混合开发解决方案1 WebView2简介 .NE ...

  9. ASP.NET Core + SaasKit + PostgreSQL + Citus 的多租户应用程序架构示例

    在 确定分布策略 中, 我们讨论了在多租户用例中使用 Citus 所需的与框架无关的数据库更改. 当前部分研究如何构建与 Citus 存储后端一起使用的多租户 ASP.NET 应用程序. http:/ ...

  10. 【多线程】观测线程状态 getState()

    观测线程状态 getState() Thread.State(查看JDK帮助文档) 线程状态.线程可以处于以下状态之一: [NEW] 尚未启动的线程处于此状态. [RUNNABLE] 在Java虚拟机 ...