标签: cpu

限制CPU速度以进行性能分析

我正在尝试优化应用程序上的几个瓶颈,该应用程序应该运行在各种各样的CPU和架构上(其中一些非常接近嵌入式设备).

然而,由于我的CPU速度,我的分析器的结果并不是很重要.有没有办法(最好是在Windows或Mac OS X下)限制我的CPU速度以进行性能分析?

我曾考虑使用虚拟机,但没有发现任何具有此类功能的虚拟机.

c++ cpu profiling

11
推荐指数
1
解决办法
840
查看次数

低级编程:操作系统如何启动新的线程/进程?

每当引导程序加载操作系统时,可能只有一个程序流处于活动状态,对吧?这意味着,一个处理器保存指令指针并执行它在EIP寄存器指向的位置处发现的命令.此时,系统如何开始利用更多进程和/或线程(没有用户态线程,但是cpu线程)?

cpu multithreading operating-system process low-level

11
推荐指数
1
解决办法
1837
查看次数

读取CPU缓存内容

有没有办法读取CPU缓存内容?架构适用于ARM.

我使一系列地址无效,然后想确定它是否无效.虽然我可以读取和写入地址范围,无论是否有无效和检查失效,我想知道是否可以读取缓存内容

谢谢!!

hardware cpu caching cpu-cache

11
推荐指数
1
解决办法
5334
查看次数

电脑是如何绘制屏幕的?

计算机如何在最低级别向屏幕绘制任何内容(没有关于外部库,如X11)?是否应该有汇编命令来执行此操作?CPU如何控制屏幕上显示的内容?

cpu assembly screen low-level graphic

11
推荐指数
2
解决办法
2428
查看次数

如果32位和64位CPU之间的唯一区别是它们的寄存器大小那么为什么必须为64位平台重写32位程序?

在编写64位程序时,源代码的实际差异是什么?比如只是组装不同?它不像64位版本的C++.如果它比编译器上的选项简单,那么更多的程序本身不是64位?如果32位与64位CPU的唯一区别是寄存器大小,我看不出它如何影响程序(除了能够处理更多内存).

language-agnostic cpu assembly cpu-word

11
推荐指数
3
解决办法
3249
查看次数

CPU和GPU的差异

单个CPU处理单元和GPU单个处理单元有什么区别?
我在互联网上出现的大多数地方都涵盖了两者之间的高层差异.我想知道每个指令可以执行什么,它们的速度有多快以及这些处理单元如何集成到竞争架构中?
这似乎是一个答案很长的问题.所以很多链接都很好.

编辑:
在CPU中,FPU运行实数操作.在每个GPU核心中执行相同操作的速度有多快?如果快,那为什么它快?
我知道我的问题非常通用,但我的目标是回答这些问题.

cpu gpu cpu-architecture

11
推荐指数
2
解决办法
3389
查看次数

在训练某些网络时,Keras(Tensorflow后端)在GPU上比在CPU上慢

我很难理解为什么GPU和CPU速度与小尺寸网络相似(CPU有时更快),并且GPU在更大尺寸的网络上更快.问题底部的代码在i7-6700k上以103.7s运行,但是当使用tensorflow-gpu时,代码在29.5秒内运行.

但是,当我训练一个拥有100个隐藏神经元的网络时,而不是像下面的例子中的1000个,使用GPU时大约需要20秒,使用CPU时大约需要15秒.

我读到另一个堆栈溢出答案,CPU-> GPU传输需要很长时间,我假设这是参考在GPU上加载数据示例.

有人可以解释为什么会发生这种情况,并可能引用我可以为最大化速度而做出的代码中的一些变化吗?

import numpy as np
import tensorflow as tf
import keras
from keras.models import Sequential
from keras.utils import np_utils
from keras.layers.core import Dense, Activation, Flatten, Dropout
from sklearn.preprocessing import normalize

## Importing the MNIST dataset using Keras
from keras.datasets import mnist
(X_train, y_train), (X_test, y_test) = mnist.load_data()

# reshape for vector input
N, x, y = X_train.shape
X_train = normalize(np.reshape(X_train, (N, x * y)))

N, x, y = X_test.shape
X_test = normalize(np.reshape(X_test, (N, x * y))) …
Run Code Online (Sandbox Code Playgroud)

cpu performance gpu keras tensorflow

11
推荐指数
1
解决办法
8090
查看次数

使用 xgb 和 XGBclassifier 的 CPU 比 GPU 快

由于我是初学者,我提前道歉。我正在尝试使用 xgb 和 XGBclassifier 使用 XGBoost 进行 GPU 与 CPU 测试。结果如下:

   passed time with xgb (gpu): 0.390s
   passed time with XGBClassifier (gpu): 0.465s
   passed time with xgb (cpu): 0.412s
   passed time with XGBClassifier (cpu): 0.421s
Run Code Online (Sandbox Code Playgroud)

我想知道为什么 CPU 的性能似乎不比 GPU 好。这是我的设置:

  • 蟒蛇 3.6.1
  • 操作系统:Windows 10 64位
  • GPU:NVIDIA RTX 2070 Super 8gb vram(驱动更新到最新版本)
  • 已安装 CUDA 10.1
  • CPU i7 10700 2.9Ghz
  • 在 Jupyter Notebook 上运行
  • 通过 pip 安装了 xgboost 1.2.0 的夜间版本

** 还尝试使用通过 pip 从预先构建的二进制轮子安装的 xgboost 版本:同样的问题

这是我正在使用的测试代码(从这里提取):

param = {'max_depth':5, …
Run Code Online (Sandbox Code Playgroud)

cpu gpu python-3.x xgboost

11
推荐指数
2
解决办法
1971
查看次数

Crashpad_handler 消耗大量 CPU

我相信 crashpad_handler 创建并上传崩溃报告,并且有多种软件可以使用它。就我而言,它来自 VS 代码,位置:

/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Resources/ crashpad_handler

我从未见过如此高的 CPU 消耗,我的 Macbook Air 变得非常嘈杂。

我很想删除“crashpad_handler”unix 可执行文件,但是,我担心将来如果我的程序崩溃,我可能无法从技术支持获得帮助,因为我的崩溃报告都不会被上传。

这似乎是一个很常见的问题,但是,我在这里没有看到任何与此相关的帖子。

请建议我如何一劳永逸地解决这个问题(不仅仅是在活动监视器中强制退出它,因为我每次都必须这样做)。

谢谢。

macos cpu crash-reports visual-studio visual-studio-code

11
推荐指数
0
解决办法
1282
查看次数

XGBoost 模型:在 GPU 上训练,在 CPU 上运行,无需分配 GPU RAM

如何在 GPU 上训练 XGBoost 模型但在 CPU 上运行预测而不分配任何GPU RAM

我的情况:我tree_method='gpu_hist'用 Python 创建了一个 XGBoot 模型 ( ) predictor='cpu_predictor',然后在 GPU 上训练它,然后将其保存(pickle)到磁盘,然后从磁盘读取模型,然后用它进行预测。

我的问题:一旦模型开始进行预测,即使我在 CPU 上运行它,它仍然会分配一些少量的 GPU RAM(大约 289MB)。这是一个问题,原因如下:

  • 我运行模型的多个副本来并行化预测,如果运行太多,预测过程就会崩溃。
  • 如果我同时在同一台机器上运行预测,我无法使用 GPU 来训练其他模型。

那么,如何告诉 XGBoost 不分配任何GPU RAM 并仅使用 CPU 和常规 RAM 进行预测呢?

非常感谢您的帮助!

python cpu gpu predict xgboost

11
推荐指数
0
解决办法
1595
查看次数