首页 \ 问答 \ Java单线程CPU使用和多线程CPU使用(Java Single Thread CPU Use and Multithread CPU Use)

Java单线程CPU使用和多线程CPU使用(Java Single Thread CPU Use and Multithread CPU Use)

我一直在编写矩阵乘法的应用程序。

我完成了它并观察资源监视器进行比较。

首先

  1. 3000x3000矩阵成倍增加。
  2. 单线程比多线程慢
  3. 当我检查Windows资源监视器时,我发现多线程应用程序的线程多于单线程。 我检查了“javaw.exe”,即使我编写单线程应用程序,它也有比一个更多的线程。 那不是关于我的。 这是关于“javaw.exe”本身。 但长话短说,单线程的javaw显示 - 例如 - 16个线程。 多线程显示 - 例如 - 24。
  4. 当多线程应用程序工作时,CPU使用几乎是100%。 大多数使用属于“javaw.exe”。 但在单线程应用程序中,使用率约为30-35%

我有一个i5 CPU。 双核。 4核心逻辑。

当我检查Windows资源监视器时,对于多线程应用程序,CPU 0-1-2-3的使用率几乎是100%。

但在单线程应用程序中,CPU 0-1-2-3仍在使用。 大约相同的百分比,但甚至不接近100%。

这是我的问题。 当我执行单线程应用程序时,谁正在使用其他核心? 当然,任何其他进程都可以使用它们。 甚至“javaw.exe”本身(我告诉自己,它是多线程的)。 但JVM是否有可能将我的单线程进程作为多线程执行?


I've been writing an application for matrix multiplication.

I've got it done and watched resource monitor for comparison.

First of all

  1. 3000x3000 matrixes multiplied.
  2. Single threaded was slower than multi threaded
  3. When I check Windows resource monitor, I see that multithreading app has more threads than single threaded. I checked "javaw.exe" and even if I write single threaded app, it has more threads than one. That's not about me. That's about "javaw.exe" itself. But long story short, javaw with single thread showed - for example - 16 threads. Multi threaded showed - for example - 24.
  4. While multi threaded app working, CPU use was almost 100%. Most of use belong to "javaw.exe". But in single threaded app, the use was around 30-35%

I've a i5 CPU. Dual core. 4 cores logical.

When I check Windows resource monitor, for multi thread app, CPU 0-1-2-3 use was almost 100%, again.

But in single thread app, CPU 0-1-2-3 was still using. Around same percentages, but not even close to 100%.

Here goes my question. When I was executing single threaded app, who was using the other cores? Of course any other process can use them. Or even "javaw.exe" itself (I told myself, it was multithreaded). But is there any possibility that JVM executes my single threaded process as multi threaded?


原文:https://stackoverflow.com/questions/37236377
更新时间:2023-09-02 10:09

最满意答案

您可以编写自己的vba函数并在查询中使用此函数。 它确实需要改变。 所以查询看起来像

UPDATE SomeTable
SET SomeField = ResolveCodes(SomeField)

ResolveCodes将是你的函数,如下所示:

Public Function ResolveCodes(SomeField as String) as String
Begin
' Some logic goes here:
' - split codes by ':'
' - resolve each code with DLookup or other OpenRecordset-based code
...
End Function

You can write your own vba function and use this function in query. It will do require changes. So the query will look like

UPDATE SomeTable
SET SomeField = ResolveCodes(SomeField)

where ResolveCodes will be your function something like this:

Public Function ResolveCodes(SomeField as String) as String
Begin
' Some logic goes here:
' - split codes by ':'
' - resolve each code with DLookup or other OpenRecordset-based code
...
End Function

相关问答

更多

最新问答

更多
  • 获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
  • 如何通过引用返回对象?(How is returning an object by reference possible?)
  • 矩阵如何存储在内存中?(How are matrices stored in memory?)
  • 每个请求的Java新会话?(Java New Session For Each Request?)
  • css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
  • 无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
  • xcode语法颜色编码解释?(xcode syntax color coding explained?)
  • 在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
  • 从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
  • 从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
  • 西安哪有PLC可控制编程的培训
  • 在Entity Framework中选择基类(Select base class in Entity Framework)
  • 在Android中出现错误“数据集和渲染器应该不为null,并且应该具有相同数量的系列”(Error “Dataset and renderer should be not null and should have the same number of series” in Android)
  • 电脑二级VF有什么用
  • Datamapper Ruby如何添加Hook方法(Datamapper Ruby How to add Hook Method)
  • 金华英语角.
  • 手机软件如何制作
  • 用于Android webview中图像保存的上下文菜单(Context Menu for Image Saving in an Android webview)
  • 注意:未定义的偏移量:PHP(Notice: Undefined offset: PHP)
  • 如何读R中的大数据集[复制](How to read large dataset in R [duplicate])
  • Unity 5 Heighmap与地形宽度/地形长度的分辨率关系?(Unity 5 Heighmap Resolution relationship to terrain width / terrain length?)
  • 如何通知PipedOutputStream线程写入最后一个字节的PipedInputStream线程?(How to notify PipedInputStream thread that PipedOutputStream thread has written last byte?)
  • python的访问器方法有哪些
  • DeviceNetworkInformation:哪个是哪个?(DeviceNetworkInformation: Which is which?)
  • 在Ruby中对组合进行排序(Sorting a combination in Ruby)
  • 网站开发的流程?
  • 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
  • 条带格式类型格式模式编号无法正常工作(Stripes format type format pattern number not working properly)
  • 透明度错误IE11(Transparency bug IE11)
  • linux的基本操作命令。。。