现在我在内存中每秒获得大约3.6GB的数据,我需要不断地在我的SSD上写它们.我使用CrystalDiskMark来测试我的SSD的写入速度,它几乎是每秒6GB,所以我认为这项工作不应该那么难.
![我的SSD测试结果] [1]:
[1] https://plus.google.com/u/0/photos/photo/106876803948041178149/6649598887699308850?authkey=CNbb5KjF8-jxJQ "测试结果":
我的电脑是Windows 10,使用Visual Studio 2017社区.
我找到了这个问题,并尝试了最高的投票答案.不幸的是,他的option_2的写入速度仅为1s/GB,远远低于CrystalDiskMark所测试的速度.然后我尝试了内存映射,这次写入变得更快,大约630ms/GB,但仍然慢得多.然后我尝试了多线程内存映射,似乎当线程数为4时,速度约为350ms/GB,当我添加线程数时,写入速度不再上升.
内存映射代码:
#include <fstream>
#include <chrono>
#include <vector>
#include <cstdint>
#include <numeric>
#include <random>
#include <algorithm>
#include <iostream>
#include <cassert>
#include <thread>
#include <windows.h>
#include <sstream>
// Generate random data
std::vector<int> GenerateData(std::size_t bytes) {
assert(bytes % sizeof(int) == 0);
std::vector<int> data(bytes / sizeof(int));
std::iota(data.begin(), data.end(), 0);
std::shuffle(data.begin(), data.end(), std::mt19937{ std::random_device{}() });
return data;
}
// Memory mapping
int map_write(int* data, int size, int id){
char* name = (char*)malloc(100); …Run Code Online (Sandbox Code Playgroud) 我想用 matplotlib 做一些绘图,但存在一个问题,我的一些刻度标签太长。我想知道是否可以使长刻度标签以多行显示。
这是一些代码:
import numpy as np
import matplotlib.pyplot as plt
data = np.random.random(4)
idx = np.arange(4)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_ylim(-0.5, 4-0.5)
ax.set_yticks(b)
ax.tick_params(length=0)
ax.barh(idx, data, zorder=2,
tick_label=["qwertyuioplkjhgfdsa+1s",
"abc","asd","qwerty"])
ax.grid(axis='x')
plt.show()
Run Code Online (Sandbox Code Playgroud)
这是我得到的情节。
正如你所看到的,底部的 ytick 标签太长,我想设置每行最多 10 个字母,所以我希望刻度标签可以显示在
qwertyuiop
lkjhgfdsa+
1s
Run Code Online (Sandbox Code Playgroud)
或者在一行中不太长。
任何帮助,将不胜感激!
安装完anaconda3后,开始安装pyside2。
我直接输入pip install pyside2,成功安装了pyside2 5.15。但是当我运行玩具示例时,发生了错误:
Traceback (most recent call last):
File "test.py", line 2, in <module>
from PySide2.QtWidgets import QApplication, QLabel
ImportError: /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2: symbol krb5_ser_context_init version krb5_3_MIT not defined in file libkrb5.so.3 with link time reference
Run Code Online (Sandbox Code Playgroud)
我什么时候/usr/lib/x86_64-linux-gnu发现了libgssapi_krb5.so.2和libkrb5.so.3,而且我不知道如何修复这个错误。有谁能够帮助我?
我的环境:
蟒蛇:3.8.3
操作系统:ubuntu 18.04
CPU:AMD锐龙3600