问题标签 [slowdown]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
311 浏览

performance - 无需更改代码的 Matlab MEX 减速

在过去的几周里,我一直在开发一些代码。代码包装在 MATLAB 中的 MEX 文件中。直到昨天,我通常的测试大约需要 1 秒钟。突然重新编译代码而不做任何更改后,相同的代码需要超过 4 秒。

唯一的变化发生在与我正在调用的函数完全无关的函数中。似乎所有编译器优化都从一秒钟消失到另一秒钟。

也许你们中的一个人过去经历过类似的事情并且知道如何处理?

谢谢你的建议。

编辑1:

因为我认为它依赖于编译器,这里是编译命令的输出(使用详细模式)

0 投票
1 回答
629 浏览

performance - wp7 xna中的随机性能故障?

我正在使用 xna 为 Windows Phone 7 开发我的第一款游戏。经过一些测试后,我注意到游戏动画出现了短暂的减速并进行了一些性能测试,但无法完全消除减速。现在我创建了一个空项目,其中只有一个 DrawableGameComponent 继承类绘制有关 runsslow 标志、Draw/Update 时间(传递给方法)以及垃圾收集器是否正在运行的文本。奇怪的是,即使使用这个极简代码,延迟似乎大约每 1 到 5 秒发生一次。延迟我指的是何时绘制而不是 33 毫秒 > 50 毫秒。有时甚至在这个简约项目中设置了 runsslow 标志。从我的实验来看,垃圾收集器似乎不是造成这种情况的主要原因,因为他执行的次数要少得多。

更新代码:

抽奖代码:

我还注意到它并非一直都在发生。

0 投票
1 回答
488 浏览

mysql - MySQL csv 导入增量减速(替代方案?)

我有下表:

我有一个 csv 文件(我每天都在导入),其中包含不到 30,000 条记录。

我努力了:

我也尝试将文件加载到临时表中并执行以下操作:

两种方法效果相同(结果相同),但我确信第二种方法的资源成本略高。我遇到的问题是每天加载/插入选择功能的导入时间每天增加约 3 秒。所以第 30 天我正在寻找 90 秒直接导入表格。

事实:导入永远不会有重复的主键(当然,除非我尝试两次导入相同的数据,这不是问题)

那么有没有办法加快这个过程(也许在导入之前关闭密钥检查?(如何?))

编辑:还要注意,不需要外键检查,因为 Category 和 Product 表已经更新,外键约束不是导入的问题。

0 投票
7 回答
486 浏览

mysql - Mysql select on indexed column slowdown on large tables

我有两个表:A - 301 列(第一个名为 a1 int(11) 主键,第 2 到第 301 - double(15,11))和 B - 33 列(第一个 - b1 int(11) 唯一键,第二个一 - b2 varchar(100) 主键, ... , 33rd - b33 int(11) MUL )。

A 和 B 都有 ~ 13,500,000 条记录。

我的 mysql 查询:对于 pos 的每个值,设置中的 pos (1, 1000, 2000, ..., 13500000) 是 1000 的倍数:

select A.*, b2, b5, b7, b8, b10, b13, b33 from A join B on a1=b1 where b33 >= pos and b33 < pos+1000;

对于 b33 <= 600,000 的值,查询需要 1-5 秒。之后,查询开始需要 20-30 秒。当 b33 >= 8,000,000 时,查询开始需要 60-70 秒。我不明白为什么会出现放缓。b33 已编入索引,连接发生在一个表中定义为主键且在另一个表中唯一的键上。有解决方法吗?这确实妨碍了代码的速度,如果没有其他方法,我将不得不将表 A 和 B 拆分为几个较小的表。我真的希望我不必那样做!请帮忙!

编辑:这是解释的 o/p -

** * ** * ** * ** * * 1. row * ** * ** * ** * ** *
id: 1
select_type: SIMPLE
table: B
type: range
possible_keys: b1,b33
key: b33
key_len : 4
ref: NULL
rows: 981
Extra: 使用 where
* ** * ** * ** * ** * 2. row * ** * ** * *** ** *
id: 1
select_type: SIMPLE
table: A
type: eq_ref
possible_keys: PRIMARY
key: PRIMARY
key_len: 4
ref: DBName.B.b1
rows: 1
Extra:
2 rows in set (0.00 sec)

0 投票
1 回答
155 浏览

android - adwhirl 在后台做很多工作吗?

我使用 admob 和 mdotm 将 adwhirl 添加到我的应用程序中,现在它冻结并给我 keydispatch 错误。我知道那些是因为它试图在后台做太多事情,但以前没有发生过。

0 投票
5 回答
5092 浏览

c++ - 使用太多内存(我认为)

我正在尝试运行一个程序来分析一堆包含数字的文本文件。文本文件的总大小约为 12 MB,我从 360 个文本文件中的每个文件中提取 1,000 个双精度并将它们放入一个向量中。我的问题是我在文本文件列表中完成了大约一半,然后我的计算机速度变慢,直到它不再处理任何文件。该程序不是无限循环,但我认为我有使用太多内存的问题。有没有更好的方法来存储不会使用太多内存的数据?

其他可能相关的系统信息:

运行 Linux

8 GB 内存

安装了 Cern ROOT 框架(虽然我不知道如何减少我的内存占用)

英特尔至强四核处理器

如果您需要其他信息,我将更新此列表

编辑:我跑了 top,我的程序使用了更多的内存,一旦它超过 80%,我就杀了它。有很多代码,所以我会挑选出分配内存的位以便共享。编辑2:我的代码:

编辑 3:我添加了代码以保留向量空间,并添加了关闭文件的代码,但在程序停止之前我的内存仍然填充到 96%...

0 投票
1 回答
1323 浏览

sorting - 推力:由于内存分配,sort_by_key 缓慢

我正在做一个sort_by_key大小为 8000 万的键值 int 数组。该设备是具有2GB VRAM的GTX 560 Ti 。当 sort_by_key 之前的可用(空闲)内存为时,它将完成排序。但是,当可用内存下降到 时,相同键值数组的 sort_by_key 需要!1200MB200ms600MB1.5-3s

我在Compute Visual Profiler下运行该程序。我发现 GPU 时间戳在之前的最后一个内核sort_by_key 和内部的第一个内核调用sort_by_key(即 a RakingReduction)之间跳跃了 1.5-3 秒。

sort_by_key我怀疑在调用它的第一个内部内核之前,内部已经完成了内存分配。需要的内存sort_by_key 是可用的(即使可用内存是600MB),因为 sort_by_key工作正常,即使速度较慢。我看到发生这种情况时计算机会冻结 1 秒。如果我保持进程资源管理器打开,我还会在 CPU物理内存图中看到一个凸起 。

当可用内存较少时,我能做些什么来使这项sort_by_key工作同样快吗?此外,导致内存碰撞和暂时冻结的设备和主机之间发生了什么?

0 投票
1 回答
1129 浏览

android - 在 Android 中放慢音频播放速度

我正在制作一个 Android 应用程序,我需要在其中减慢正在播放的音频,以便用户可以更清楚地听到句子。我不知道如何解决这个问题。虽然我对信号处理知之甚少,但我不知道如何将其与 Android 结合。有任何 API 或可以帮助我的东西吗?

谢谢

0 投票
1 回答
184 浏览

android - 用于键入文件的 Android R Id

我正在制作一个必须减慢音频文件播放速度的应用程序。音频文件的 id 位于 int[] 数组中(如 R.raw.one、R.raw.two)。这是我的问题,我正在尝试遍历这个数组,选择一个 id 来获取音频文件,并将其放入 FileInputStream 中,以便最终将其读取到 AudioTrack 并减慢音频速度。问题是 FileInputStream 只接受 File 类型,而不是 int(ID 是十六进制)。

我想不出另一种方法来做到这一点。我可以使用 MediaPlayer 减慢播放速度吗?因为那样会容易得多。

谢谢

0 投票
1 回答
890 浏览

android - OGG 音频到 AudioTrack

我正在尝试将 OGG 文件加载到 AudioTrack 上,以便我可以管理播放速率并播放它。但是,我在“track[voiceIndex] = dis.readByte();”这一行得到了一个空指针异常。我想它超出了轨道阵列的范围。老实说,我对数据流了解不多,所以我只是复制了这段代码。我很难理解它。任何帮助将不胜感激,谢谢。