上一页 1 2 3 4 5 6 ··· 41 下一页
摘要: 定义(What) 公共子表达式消除 就是如果表达式E的值已经计算的到了,并且自计算的到值后E的值就不再改变了,就说,表达式E在后续计算中是一个公共表达式。 简单说,该表达式上面已经执行过了,下面没必要再执行了 举个例子: import tvm from tvm import relay from t 阅读全文
posted @ 2024-04-06 14:46 牛犁heart 阅读(194) 评论(0) 推荐(0) 编辑
摘要: Lambda 表达式完整的格式如下: [捕获列表] (形参列表) mutable 异常列表-> 返回类型 { 函数体 } 各项的含义: 捕获列表:捕获外部变量,捕获的变量可以在函数体中使用,可以省略,即不捕获外部变量。 形参列表:和普通函数的形参列表一样。可省略,即无参数列表 mutable:mut 阅读全文
posted @ 2024-01-26 23:53 牛犁heart 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 这节主要涉及到一个多线程情况下存在的数据竞争问题 -- 多个线程同时访问共享数据时,由于没有正确的同步机制,导致数据出现不一致的情况。 C/C++ 多线程中,可以通过互斥锁(mutex)、原子操作(atomic,C++11 也提供了原子操作库,如std::atomic,用于实现原子加法、原子赋值等操 阅读全文
posted @ 2024-01-01 22:47 牛犁heart 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 问: 有10G的订单数据,希望订单金额(假设都是正整数)进行排序,但我们内存有限,只有几百MB,如何进行排序? 答: 因内存有限,需要排序的数据量巨大,所以,此时需要外部排序,外部排序采用的是一种分治思想,外部排序最常用的是多路归并排序,即将大数据切成多份一次可以载入内存的小数据,对小数据进行内存排 阅读全文
posted @ 2023-12-29 23:16 牛犁heart 阅读(29) 评论(0) 推荐(0) 编辑
摘要: CUDA架构而言,主机端的内存分为两种,一种是可分页内存(pageable memroy), 一种是页锁定内存(page-lock或 pinned)。 可分页内存是由操作系统API malloc()在主机上分配,页锁定内存是由CUDA函数cudaMallocHost()和cudaHostAlloc( 阅读全文
posted @ 2023-11-19 17:32 牛犁heart 阅读(2964) 评论(1) 推荐(1) 编辑
摘要: 在用cmake编译cuda程序时,总是报Compilation error ptxas fatal : Value ‘sm_30’ is not defined for option ‘gpu-name’问题,也是折腾了好久,感谢这位小哥的解决方案,亲试无误,万分感谢~ 转载:https://blo 阅读全文
posted @ 2023-10-07 12:02 牛犁heart 阅读(515) 评论(0) 推荐(0) 编辑
摘要: thread ID 的计算方式,简单来说很像小学学的除法公式,本文转载自同学一篇博客;并进行简单修改; 被除数 = 除数 * 商 + 余数 用公式表示:$$线程Id = blockId * blockSize + threadId$$ **blockId** :当前 block 在 grid 中的坐 阅读全文
posted @ 2023-09-03 17:45 牛犁heart 阅读(227) 评论(0) 推荐(0) 编辑
摘要: Observer(观察者模式) -- 对象行为型模式 ### 别名 依赖,发布-订阅(publish - subscribe) ### 意图 定义对象间的一种**一对多**的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 ### 主要解决的问题 一个对象状态改变给其 阅读全文
posted @ 2023-08-19 00:04 牛犁heart 阅读(54) 评论(0) 推荐(0) 编辑
摘要: Adapter(适配器) -- 类对象结构模式 ### 意图 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能在一起工作的那些类可以在一起工作。 ### 别名 包装器(wrapper) ### 主要解决什么问题 主要解决在软件系统中,常常将一些"现存的对象" 阅读全文
posted @ 2023-08-06 23:49 牛犁heart 阅读(8) 评论(0) 推荐(0) 编辑
摘要: ### 并行计算 并行计算(parallel computing)是一种计算形式,它将大的问题分解为许多可以并行的小问题。 并行计算分为:任务并行(task parallel)和数据并行(data parallel) * 任务并行指多个任务同时执行 * 数据并行指多个数据可以同时处理,每个数据由独立 阅读全文
posted @ 2023-08-06 21:05 牛犁heart 阅读(161) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 41 下一页