- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在多核机器上,java 线程调度器的决策相当随意,它根据线程创建时间、从哪个线程创建等来分配线程优先级。
想法是使用 pso 运行一个调整过程,随机设置线程优先级,然后最终达到最佳优先级,其中适应度函数是程序的总运行时间?
当然会有更多参数,比如优先级会在运行过程中发生变化以找到最佳优先级函数。
这个想法听起来有多实用、有趣?和任何建议。只是一些背景,我已经用 java/c/c++ 编程了几年,现在有各种项目,另一种选择是在 c 中基于此制作线程调度程序,其中默认线程调度程序是操作系统。
最佳答案
您所描述的方法是一种静态方法,即您需要多次运行程序,然后提出一个调度解决方案,然后将您的调度信息与程序一起发送。
问题在于,对于大多数重要程序而言,它们的性能将部分取决于它们所处理的特定数据。即使您找到了为一个数据集安排线程的最佳方式,也绝对不能保证它会提高另一个数据集的速度。在大多数情况下,每次他们想要发布新版本时运行一个漫长而艰巨的优化对于开发人员来说是不值得的,除非可能需要大量的计算工作(程序可能是手动调整而不是编写的) Java 无论如何)。
我会说自学线程调度器是个好主意,但您不能在这里将其视为经典优化问题。您要么需要确保您的调度顺序将保持最佳(不太可能),要么找到一种在运行时有效的优化方法。这里的问题可能是,调度程序的开销不会花太多时间来破坏您可能获得的任何性能提升。
我认为这是一个有点主观的问题,但总的来说不,不认为它会起作用。
关于java - 这个java项目思路实用吗? (线程调度器和粒子群优化),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3421415/
我有以下场景:有 1 个包含书籍的表和两对包含销售订单和采购订单交易的表 (HD/IT),这些交易通过销售订单 ID 连接。表结构如下: CREATE TABLE `books` ( `id` i
我是一名优秀的程序员,十分优秀!