问题标签 [performance]
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.
performance - 获取 π 值的最快方法是什么?
我正在寻找获得 π 值的最快方法,作为个人挑战。更具体地说,我使用的方法不涉及使用#define
常量,如M_PI
,或硬编码数字。
下面的程序测试了我所知道的各种方法。理论上,内联汇编版本是最快的选择,但显然不可移植。我已将其作为基线与其他版本进行比较。在我的测试中,使用内置插件,该4 * atan(1)
版本在 GCC 4.2 上是最快的,因为它会自动将 折叠atan(1)
成一个常量。-fno-builtin
指定后,版本atan2(0, -1)
最快。
这是主要的测试程序(pitimes.c
):
fldpi.c
以及仅适用于 x86 和 x64 系统的内联汇编内容 ( ):
还有一个构建脚本,它构建了我正在测试的所有配置(build.sh
):
除了在各种编译器标志之间进行测试(我也比较了 32 位和 64 位,因为优化不同),我还尝试过切换测试的顺序。但是,该atan2(0, -1)
版本仍然每次都名列前茅。
.net - “内存泄漏”的剖析
从 .NET 的角度来看:
- 什么是内存泄漏?
- 如何确定您的应用程序是否泄漏?有什么影响?
- 如何防止内存泄漏?
- 如果您的应用程序有内存泄漏,它会在进程退出或被杀死时消失吗?或者,即使在进程完成后,您的应用程序中的内存泄漏是否会影响系统上的其他进程?
- 那么通过 COM Interop 和/或 P/Invoke 访问的非托管代码呢?
performance - 前 10000 个素数的最有效代码?
我想打印前 10000 个素数。谁能给我最有效的代码?说明:
- 如果您的代码在 n > 10000 时效率低下,则无关紧要。
- 代码的大小无关紧要。
- 您不能以任何方式对值进行硬编码。
c# - 如何从类型创建新的对象实例
人们可能并不总是在编译时知道Type
对象的 ,但可能需要创建Type
.
如何从 a 中获取新的对象实例Type
?
sql - 数据库索引如何工作?
鉴于索引随着数据集大小的增加而变得如此重要,有人可以解释索引如何在与数据库无关的级别上工作吗?
有关对字段进行索引的查询的信息,请查看如何索引数据库列。
python - Python中最有效的图数据结构是什么?
我需要能够在 python 中操作一个大的(10^7 个节点)图。每个节点/边对应的数据是最少的,比如说,少量的字符串。就内存和速度而言,最有效的方法是什么?
dict 的 dict 更灵活、更易于实现,但我直观地希望列表列表更快。list 选项还要求我将数据与结构分开,而 dicts 将允许以下内容:
你有什么建议?
是的,我应该更清楚我所说的效率是什么意思。在这种特殊情况下,我的意思是随机访问检索。
将数据加载到内存中并不是一个大问题。这是一劳永逸的。耗时的部分是访问节点,以便我可以提取信息并测量我感兴趣的指标。
我没有考虑将每个节点都设为一个类(所有节点的属性都相同),但似乎这会增加额外的开销层?我希望有人对他们可以分享的类似案例有一些直接的经验。毕竟,图是 CS 中最常见的抽象之一。
c++ - C++ 中的 CPU 节流
我只是想知道是否有一种优雅的方法可以为执行密集计算的特定线程设置最大 CPU 负载。
现在我找到了线程中最耗时的循环(它只进行压缩)并使用GetTickCount()
硬Sleep()
编码值。它确保循环持续一段时间,然后休眠一段最短时间。它或多或少地完成了这项工作,即保证线程不会使用超过 50% 的 CPU。
但是,行为取决于 CPU 内核的数量(巨大的劣势)和丑陋的(较小的劣势:))。
有任何想法吗?
.net - 密封类真的能提供性能优势吗?
我遇到了很多优化技巧,它们说你应该将你的类标记为密封以获得额外的性能优势。
我进行了一些测试以检查性能差异,但没有发现。难道我做错了什么?我是否错过了密封类会产生更好结果的情况?
有没有人运行测试并看到了不同?
帮我学习:)
performance - 速度比较 - 解释语言中的程序与 OO
在 PHP 和 JavaScript 等解释性编程语言中,使用面向对象的方法优于过程方法的影响是什么?
具体来说,我正在寻找的是在创建 Web 应用程序并在过程和面向对象方法之间进行选择时要考虑的事项清单,不仅可以优化速度,还可以优化可维护性。如果您知道任何进一步探讨此问题的文章,引用的研究和测试用例也会有所帮助。
底线:在解释语言中使用 OO 与程序时,性能的真正影响有多大(如果有的话)?
algorithm - Big O,您如何计算/近似它?
大多数拥有 CS 学位的人肯定知道Big O 代表什么。它可以帮助我们衡量算法的可扩展性。
但我很好奇,你如何计算或近似算法的复杂性?