标签: solid-state-drive

您对闪存驱动器的体验如何?

EMC正在推广固态闪存驱动器,我的项目正考虑在未来朝着这个方向发展.有没有人有用闪存驱动器替换传统磁盘存储的经验?除了价格,您是否经历过该技术的任何缺点?

hardware emc solid-state-drive hard-drive usb-flash-drive

5
推荐指数
1
解决办法
831
查看次数

使用ssd和mmap改进并发文件读取

我有巨大的气象文件.太大了适合公羊.

我需要执行大量并发随机读取.所以,我认为SSD + mmap可以提高性能.

但是什么是并发mmap读取?他们应该如何组织?

在此输入图像描述

concurrency performance mmap solid-state-drive

5
推荐指数
1
解决办法
1055
查看次数

SSD 驱动器会使 maven 构建得更快吗?

这里的好帖子说使用 SSD 驱动器进行 Eclipse 工作时速度会更好。

但我的缓慢部分主要用于 maven 构建。我有 1600 多个课程的项目。使用 maven 进行干净的构建需要 2-3 分钟。我想知道 SSD 驱动器是否会使其更快?因为 SSD 驱动器在读取上有很大的改进,但据我所知,写入的改进较小。

我想知道是否有人尝试过这个?

solid-state-drive maven

5
推荐指数
1
解决办法
2577
查看次数

并行I / O SSD与HDD的惊人结果

关于并行I / O的一些测试中发生了一个非常奇怪的情况。这是一种情况。我有多个线程将文件处理程序打开到同一文件,并从文件的多个位置(均匀间隔)读取有限数量的字节并将其转储到数组中。所有这些都是通过增强线程完成的。现在,我假设由于随机访问的原因,HDD应该更慢。这就是为什么我的测试实际上针对SSD的原因。事实证明,与HDD相比,从固态磁盘读取同一文件时,几乎没有任何加速。想知道问题可能是什么?这对我来说是否真的很令人惊讶/我也在下面发布了我的代码以查看我的实际工作:

    void readFunctor(std::string pathToFile, size_t filePos, BYTE* buffer, size_t buffPos, size_t dataLn, boost::barrier& barier) {

        FILE* pFile;
        pFile = fopen(pathToFile.c_str(), "rb");

        fseek(pFile, filePos, SEEK_SET);
        fread(buffer, sizeof(BYTE), dataLn, pFile);

        fclose(pFile);
        barier.wait();

    }

    void joinAllThreads(std::vector<boost::shared_ptr<boost::thread> > &threads) {

        for (std::vector<boost::shared_ptr<boost::thread> >::iterator it = threads.begin(); it != threads.end(); ++it) {
            (*it).get()->join();

        }

    }

    void readDataInParallel(BYTE* buffer, std::string pathToFile, size_t lenOfData, size_t numThreads) {
        std::vector<boost::shared_ptr<boost::thread> > threads;
        boost::barrier barier(numThreads);
        size_t dataPerThread = lenOfData / numThreads;

        for (int var = 0; var < …
Run Code Online (Sandbox Code Playgroud)

c c++ io parallel-processing solid-state-drive

5
推荐指数
3
解决办法
5071
查看次数

带有SSD的Cassandra - 两个磁盘还是一个?

通常建议cassandra使用两个单独的磁盘:一个用于提交日志,另一个用于其他所有磁盘.

但是,在配置指南的最新更新中,出现以下短语:

对于SSD,建议提交日志和SSTable都在同一个安装点上.

任何人都可以解释为什么建议只使用一个磁盘,如果它是SSD?谢谢.

solid-state-drive cassandra

5
推荐指数
1
解决办法
2106
查看次数

在EC2 ubuntu实例中无法访问SSD驱动器

在以下具有SSD驱动器的EC2实例类型中

  • r3.2xlarge
  • r3.4xlarge
  • i2.xlarge

当我通过SSH登录时,我无法看到SSD驱动器.我在尝试"df -h".

我试过了

  • 重启,但这没有帮助.
  • 试图终止并创建一个也没有帮助的新实例.建议不是一次性问题.

ubuntu solid-state-drive amazon-ec2 amazon-web-services

5
推荐指数
1
解决办法
2711
查看次数

具有随机读/写功能的 SSD 原始 I/O 基准测试

我的笔记本电脑有一个 SSD 磁盘,其物理磁盘扇区大小为 512 字节,逻辑磁盘扇区大小为 4,096 字节。我正在开发一个 ACID 数据库系统,该系统必须绕过所有操作系统缓存,因此我直接从分配的内部内存 (RAM) 写入 SSD 磁盘。我还在运行测试之前扩展了文件,并且在测试期间不调整其大小。

现在这是我的问题,根据SSD 基准测试,随机读取和写入应该分别在 30 MB/s 到 90 MB/s 的范围内。但这是我的(相当可怕的)遥测数据,来自我的无数性能测试:

  • 读取随机 512 字节块(物理扇区大小)时为 1.2 MB/s
  • 写入随机 512 字节块(物理扇区大小)时为 512 KB/s
  • 读取随机 4,096 字节块(逻辑扇区大小)时为 8.5 MB/s
  • 写入随机 4,096 字节块(逻辑扇区大小)时为 4.9 MB/s

除了使用异步 I/OI 之外,还设置FILE_SHARE_READFILE_SHARE_WRITE标志来禁用所有操作系统缓冲 - 因为我们的数据库是 ACID 我必须这样做,我也尝试过,FlushFileBuffers()但这给了我更糟糕的性能。我还按照某些代码的要求等待每个异步 I/O 操作完成。

这是我的代码,它是否有问题,或者我是否陷入了这种糟糕的 I/O 性能?

HANDLE OpenFile(const wchar_t *fileName)
{
    // Set access method
    DWORD desiredAccess = GENERIC_READ | GENERIC_WRITE …
Run Code Online (Sandbox Code Playgroud)

c++ io asynchronous solid-state-drive hard-drive

5
推荐指数
1
解决办法
2993
查看次数

在SSD或Mechanical Disk Drive上安装Android Studio和SDK

我刚刚升级到新的英特尔酷睿i7(第四代)PC,配备512GB SSD,约5TB机械存储和16GB DDR3内存.我现在计划设置Android SDK和Android工作室.我想知道,在我的旧电脑上,所有平台> = v1.6(Cupcake)的Android SDK都是22.6gb.因此,将它们安装在SSD上是否有显着的好处,或者速度优势是否会超过SSD上消耗的额外空间和写入的成本?

android solid-state-drive hard-drive android-studio

5
推荐指数
1
解决办法
7581
查看次数

SSD 与 tmpfs 速度

tmpfs使用以下命令在 Ubuntu 上的主目录中创建了一个文件系统:

$ mount -t tmpfs -o size=1G,nr_inodes=10k,mode=0777 tmpfs space
$ df -h space .
File system                  Size    Used Avail. Avail% Mounted at
tmpfs                        1,0G    100M  925M   10%   /home/user/space
/dev/mapper/ubuntu--vg-root  914G    373G  495G   43%   /
Run Code Online (Sandbox Code Playgroud)

然后我写了这个Python程序:

#!/usr/bin/env python3

import time
import pickle


def f(fn):
    start = time.time()
    with open(fn, "rb") as fh:
        data = pickle.load(fh)
    end = time.time()
    print(str(end - start) + "s")
    return data


obj = list(map(str, range(10 * 1024 * 1024)))  # approx. 100M


def …
Run Code Online (Sandbox Code Playgroud)

python linux performance solid-state-drive tmpfs

5
推荐指数
1
解决办法
2342
查看次数

为什么Java磁盘I/O的执行速度比用C编写的等效I/O代码慢得多?

我有一个SSD磁盘,每个规格应提供不低于10k的IOPS.我的基准确认它可以给我20k IOPS.

然后我创建了这样一个测试:

private static final int sector = 4*1024;
private static byte[] buf = new byte[sector];
private static int duration = 10; // seconds to run
private static long[] timings = new long[50000];
public static final void main(String[] args) throws IOException {
    String filename = args[0];
    long size = Long.parseLong(args[1]);
    RandomAccessFile raf = new RandomAccessFile(filename, "r");
    Random rnd = new Random();
    long start = System.currentTimeMillis();
    int ios = 0;
    while (System.currentTimeMillis()-start<duration*1000) {
        long t1 = System.currentTimeMillis();
        long pos = …
Run Code Online (Sandbox Code Playgroud)

java io performance solid-state-drive java-8

4
推荐指数
1
解决办法
3052
查看次数