optimization相关内容

谷歌应用脚​​本超时 ~ 5 分钟?

我的 google 应用程序脚本正在遍历用户的 google 驱动器文件,并将文件复制并有时移动到其他文件夹.脚本总是在 5 分钟后停止,日志中没有错误消息. 我在一次运行中对数十甚至数千个文件进行排序. 是否有任何设置或解决方法? 解决方案 你可以做的一件事(这当然取决于你想要完成的事情)是: 将必要的信息(例如循环计数器)存储在电子表格或其他永久存储(例如 Scrip ..

在 1-D 网格中计算 warp id/lane id 的最有效方法是什么?

在 CUDA 中,每个线程都知道它在网格中的块索引和块内的线程索引.但是它似乎没有明确提供两个重要的值: 它的索引作为其经线中的一条车道(其“车道 ID") 在区块内作为车道的经线的索引(其“经线 id") 假设网格是一维的(又名线性,即blockDim.y和blockDim.z为1),显然可以通过以下方式获得: 枚举:无符号 { warp_size = 32 };auto lan ..
发布时间:2022-01-10 16:16:06 其他开发

CUDA 编译器产生非最优的汇编器

我已经编译了流动的简单测试内核(CUDA5,sm2.0): __device__ void TestKernel(int *pdata){整数a0,b0,c0;a0 = pdata[0];b0 = pdata[1];c0 = a0 + b0;pdata[2] = c0;} 并期待像流动汇编器这样的东西: LD R3,[R0]LD R4,[R0+4]IADD R4,R4,R3ST [R0+8] ..
发布时间:2022-01-10 16:07:05 其他开发

你是如何描述的?优化 CUDA 内核?

我对 CUDA 可视化分析器和占用电子表格有些熟悉,尽管我可能没有尽可能地利用它们.剖析与优化 CUDA 代码不像分析 &优化在 CPU 上运行的代码.因此,我希望从您的经验中学习如何充分利用我的代码. 最近有一篇帖子在寻找最快的代码来识别自我编号,以及我提供了 CUDA 实现.我对这段代码的速度并不满意,但我不知道什么是正确的问题以及我可以从什么工具中得到答案. 您如何确定使您的 C ..
发布时间:2022-01-10 15:29:42 其他开发

我应该用“if"语句统一两个相似的内核,冒着性能损失的风险吗?

我有 2 个非常相似的内核函数,代码几乎相同,但略有不同.目前我有两个选择: 编写 2 种不同的方法(但非常相似) 编写单个内核并将不同的代码块放在 if/else 语句中 if 语句会在多大程度上影响我的算法性能? 我知道没有分支,因为所有块中的所有线程都将进入 if 或 else. 那么如果内核函数被多次调用,单个 if 语句会降低我的性能吗? 解决方案 您还有第三种 ..
发布时间:2022-01-10 15:16:58 C/C++开发

使用迭代器的最快(最 Pythonic)方式

我很好奇使用迭代器的最快方式是什么,也是最 Pythonic 的方式. 例如,假设我想创建一个带有 map 内置函数的迭代器,它会累积一些东西作为副作用.我实际上并不关心 map 的结果,只关心副作用,所以我想以尽可能少的开销或样板文件来完成迭代.比如: my_set = set()my_map = map(lambda x, y: my_set.add((x, y)), my_x, my ..
发布时间:2022-01-10 14:53:51 Python

Java:优化哈希集以进行大规模重复检测

我正在处理一个处理大量推文的项目;目标是在我处理重复项时删除它们.我有推文 ID,它以 "166471306949304320" 格式的字符串形式出现 为此,我一直在使用 HashSet,它可以正常工作一段时间.但是当我达到大约 1000 万个项目时,我彻底陷入困境并最终得到一个 GC 错误,大概来自重新散列.我尝试使用 定义更好的尺寸/负载 tweetids = new ..
发布时间:2022-01-10 13:54:18 Java开发

部分解决方案的优化:最小化对之间的距离总和

我有一个我喜欢的问题,我喜欢思考解决方案,但不幸的是我被困住了.我希望你也喜欢.问题说明: 我有两个 2D 点列表(例如 A 和 B),并且需要将 A 中的点与 B 中的点配对,条件是所有对中的距离之和最小.A pair 包含一个来自 A 的点和一个来自 B 的点,一个点只能使用一次,并且应该创建尽可能多的对(即 min(length(A), length(B))). 我做了一个简单的 ..
发布时间:2022-01-09 16:38:09 其他开发

是否可以在 MySQL 中加快 sum() 的速度?

我正在对 MySQL 数据库执行“从 bar 中选择 sum(foo)"查询,该数据库汇总了 7.3 毫米的记录,每次运行大约需要 22 秒.有没有加快 MySQL 求和的技巧? 解决方案 不,你不能加速函数本身.这里的问题实际上是您选择了 730 万条记录.MySQL 必须扫描整个表,而 730 万是一个相当大的数字.实际上,它完成得如此之快让我印象深刻. 您可以采用的策略是将数据 ..
发布时间:2022-01-09 15:46:16 数据库

ColdFusion:更有效的 structKeyExists() 而不是 isDefined()

在 ColdFusion 中哪一个更有效? isDefined('url.myvar') 或 structKeyExists(url, 'myvar') 解决方案 这些天(CF8+)速度上的差异不是那么很大.不过,structKeyExists 确实快了一点.原因如下. 当您使用 isDefined 时,您传入的字符串会在多个范围内作为键名进行搜索.从 CF9 开始,范围列表按检查 ..

如何优化 MySQL 以插入数百万行?

我需要将数百万行插入 MySQL 数据库(InnoDB 引擎).当桌子很大时,我有时间问题.几乎所有时间都花在插入查询上.也许有人知道如何优化它? 解决方案 将大量数据导入 InnoDB: 在 MySQL 配置中设置 innodb_doublewrite = 0 innodb_buffer_pool_size = 50%+ 系统内存 innodb_log_file_size ..
发布时间:2022-01-09 12:44:52 数据库

由于索引导致记录数增加,SQLite 插入速度变慢

原问题 背景 众所周知,SQLite 需要微调 以实现大约 50k 插入/秒的插入速度.这里有很多关于插入速度慢的问题以及大量的建议和基准. 还有 声称 SQLite 可以处理大量数据,报告 50+ GB 不会导致正确设置出现任何问题. 我已按照此处和其他地方的建议来实现这些速度,我对 35k-45k 插入/秒感到满意.我遇到的问题是,所有的基准测试都只展示了 ..
发布时间:2022-01-09 12:14:55 数据库

在x86上将float转换为int的最快方法是什么

在 x86 CPU 上将浮点数转换为 int 的最快方法是什么?对于以下任意组合,最好在 C 或程序集中(可以在 C 中内联): 32/64/80 位浮点数 -> 32/64 位整数 我正在寻找一些比让编译器更快的技术. 解决方案 这取决于您是要截断转换还是舍入转换以及精度.默认情况下,当您从 float 转换为 int 时,C 将执行截断转换.有 FPU 指令可以做到这一点, ..
发布时间:2022-01-09 10:26:35 其他开发

通过算法比较许多客户的多个价格选项

我们有 1,000,000 名客户.每种商品的销售成本可以表示为价格 A 或价格 B. 价格A 价格 A 和价格 B 不是线性关系.在某些情况下,B 的价格是其 2 倍,在某些情况下是 100 倍. A 上所有客户的成本是 min( (sum(A)/count(A)) , 100 ) * count(A)实际上,如果 A 上的所有客户的平均成本小于 100,则将向上取整为 10 ..
发布时间:2022-01-07 23:58:00 Python

优化 LINQ to SQL 查询

我有一个类似这样的查询: public IListFetchLatestOrders(int pageIndex, int recordCount){DatabaseDataContext db = new DatabaseDataContext();返回(来自 db.Orders 中的 oorderby o.CreatedDate 降序选择 o).Skip(pageIndex * record ..
发布时间:2022-01-07 16:18:02 其他开发

为什么重用 DataContext 会对性能产生负面影响?

经过 公平 金额 of 研究 和一些错误,我修改了我的代码,以便在每次查询数据库或插入数据时创建一个新的 DataContext.并且经常查询数据库——对于处理的 250k 个事务中的每一个,在插入事务之前查询数据库以获取客户 ID、部门 ID 和类别. 所以现在我正在尝试优化代码,因为它每秒只处理大约 15 个事务.我删除了一些无关的查询并添加了一些索引并使其达到 30/秒.然后我想,即使 ..
发布时间:2022-01-07 15:48:09 C#/.NET

哪个是查找速度最快的 STL 容器?

好的,作为序言,我需要缓存很少修改的数据的相对较小的子集,以避免出于性能原因频繁查询数据库.此数据在只读意义上被大量使用,因为它经常被其他表中的大量数据引用. 我编写了一个类,该类能够在侦听提交更改以及更新缓存对象的线程安全回调机制的同时,将有问题的两个表的全部内容基本上存储在内存中. 我当前的实现有两个 std::vectors 一个用于每个表的元素.该类提供对每个向量的整体访问以及 ..
发布时间:2022-01-07 11:44:29 C/C++开发