![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 72
夜雨清狂
活到老学到老
展开
-
【原创】性能炸裂c++20协程+iocp/epoll,C++20无栈协程超轻量高性能异步库开发实战
主要讲述c++20协程库开发的实战过程和思路方法,比较干货,后面有源码。刚学也有很多不足,希望大佬指正。原创 2022-07-29 16:28:27 · 8234 阅读 · 2 评论 -
【原创】C++ bit比特位数据编辑类模版CLBitT
C++数据bit比特位编辑类CLBit目前数据的最小编辑单位大多为Byte(比特),而缺少对bit(比特位)的编辑方式。因此CLBit类就是为了编辑数据比特位构造的包装类。通过比特位级别的数据编辑(增删改查等)功能,可更有效的使用内存空间资源。#ifndef __CL_BITBASE_H__#define __CL_BITBASE_H__#include "../_cl_common/CLCommon.h"#include <vector>#include <iostream原创 2021-07-31 22:12:01 · 890 阅读 · 0 评论 -
[原创]STL容器map和unordered_map性能,创建,插入,随机访问速度对比!
测试map和unordered_map,采用1亿次随机访问,分别在数据量10~1000万不同情况测试,生成时间和随机访问时间;平台:win10,vs2019,c++14,编译,启动优化结论:1、unordered_map在任何情况下都要比map的随机访问速度更快,5倍以上;2、unordered_map在100万数据量以下要比map的随机插入速度快,如果单个保存的数据结构较大,这一速度会进一步降低;3、unordered_map会比map占用更多的内存;元素个数 | 访问次数 | map原创 2020-09-06 16:42:03 · 1550 阅读 · 0 评论 -
【效率对比】c++多线程同步几种方式的效率对比研究: 原子操作,c++锁,自旋锁,windows临界区,windows互斥对象
通过比较以下几种同步方式,测试各方法效率,分为以下6种情况做对比:不加任何同步措施;Windows原子操作;c++11 mutrex;自定义的自旋锁CLCS;Windows临界区;Windows互斥对象;硬件平台:AMD 8核16线程,内存16GB系统/软件平台:windows10,vs2019com(vc++);方法:定义3个变量,在多线程中自加(16线程x10万次),记录...原创 2020-03-14 16:13:37 · 2788 阅读 · 0 评论 -
源码分享,采用线程池,实现高性能跨平台C++多线程并行库,附测试!
由于实用需要,实现一个跨平台的多线程并行库,摆脱windows的ppl,并且兼顾效率和跨平台性,特点如下:采用C++11跨平台,调度性能和windows ppl库相近;使用了其他大神的 线程池代码,实现线程高效复用;支持STL容器、C数组、指针多种方式传递容器目标对象做并行;代码可自行完善功能;先看测试结果:测试所用的执行函数体执行时间极端{ i += 1;},目的是,测试比较...原创 2020-02-24 01:22:00 · 1410 阅读 · 2 评论 -
效率对比:分别用 C++Amp,C++ PPL,SSE/AVX,Serial(串行)计算矩阵乘法。
本次测试矩阵乘法未作分块优化。未使用cuda测试。采用微妙级的计时器。分别对16阶方矩阵到4048阶方阵采用如下方式做乘法计算,统计结果。C++Amp(GPU),C++PPL(多线程16核),SSE/AVX(单线程),AVX-Db(单线程,双精度),Serial(单线程串行)时间统计如下(单位:秒)Rank :16326412825651210...原创 2020-02-12 18:10:47 · 2096 阅读 · 2 评论 -
源码分享:C++高性能的内存池实现。内存预分配,非复制构造,全局内存池。
为了实现面向对象编程,对于的复杂型结构快速构造与释放,写了个内存池管理模板。他特点是允许用户放弃内存池生成对象使用权,而不是执行析构。实现对象的复用。实现同类型对象内存池的全局华管理。内存块的大小可调。内存池状态可输出显示。内存预分配。对象构造采用原始构造,非动态申请和复制构造,提高速度。加锁,实现多线程支持。通过giveUpOne方法放弃对象使用权,不需要释放对象,实现高度对象复用。...原创 2020-02-10 21:07:21 · 1164 阅读 · 2 评论 -
源码分享:C++矩阵类CLMatrixT,功能强大使用简单,支持内存池、宽指令、并行化加速!持续更新...
C++矩阵类模板CLMatrixT:C++矩阵类模板CLMatrixT介绍:特点先演示使用方法:再看运行测试结果:最后分享源代码:C++矩阵类模板CLMatrixT介绍:最近在研究AI和深度学习,矩阵计算代码基本全是python的,C++基本没有成熟的库。而矩阵计算中,许多python的矩阵计算例子用法都很简单,感觉C++也应该有属于自己的矩阵处理类,即可享受C++的速度又可享受面向对象编程方...原创 2020-01-28 17:12:28 · 1970 阅读 · 0 评论 -
源码分享:C++源码实现快速搭建神经网络,模拟sin和cos函数双逼近
训练采用1输入,定义域为正负2Π随机数,输出2维向量,对于sin和cos函数计算值。现在用C++源码实现神经网络,模拟函数双逼近预测。X={x1},x1∈[−2π,2π]X= \{x_1\}, x_1\in\mathbb [-2\pi,2\pi]X={x1},x1∈[−2π,2π]Y=Γ(X)={sin(x1),cos(x1)}Y=\Gamma(X) = \{sin(x_1),cos...原创 2020-02-10 22:28:49 · 814 阅读 · 0 评论