我刚刚收到一个新盒子。
它有一个SSD主传动以及 1TB SATA 硬盘辅助驱动。
我将在 SSD 上运行 Windows 操作系统和二进制文件
,并将所有下载/文档/音乐/等保存在辅助驱动器上。
我的问题是,我是否应该将我的 Visual Studio 项目和代码保存在 SSD 上,还是保存在辅助驱动器上?
速度更快的 SSD 可能更适合编译和索引搜索,但为了实现更并行的磁盘 IO 情况,将其保留在第二个驱动器上是否更好?
答案1
SSD 具有更好的 IO,因此将代码放在 SSD 磁盘上是有意义的。
答案2
这取决于您使用的驱动器。读取性能始终会输给 SSD,但写入性能可能不会输给 SSD。在编译过程中,对于创建新的可执行文件、程序集和其他构建工件,写入性能将非常重要。
将其中一个较大的解决方案复制到 HD 和 SSD 并编译两者。您会注意到两者之间的差异,然后做出决定。我猜 HD 的编译/构建速度会更快,但 SSD 在其他方面会胜出。
答案3
我不知道在 Visual Studio 中是否可以实现这一点,但最好的方法可能是两者结合。将源代码放在 SSD 上,但将编译的对象写入 HD。这就是我们基于 make 的项目布局方式,但出于其他原因。
答案4
硬盘速度对于 Visual Studio 的整体性能至关重要。Scott Guthrie 在本篇文章中很好地阐述了这一点邮政:
在过去的几年中,机器上的多核 CPU 已经变得足够快,在大多数常见的应用场景中,您通常不会阻塞机器中可用的处理器容量。
当您使用 Visual Studio 进行开发时,您最终会读取/写入大量文件,并花费大量时间进行磁盘 I/O 活动。大型项目和解决方案可能有数百(或数千)个源文件(包括图像、css、页面、用户控件等)。当您打开一个项目时,Visual Studio 需要读取并解析其中的所有源文件以提供智能感知。当您加入源代码管理并签出文件时,您正在更新磁盘上的文件和时间戳。当您编译解决方案时,Visual Studio 将从多个磁盘路径位置检查更新的程序集,在编译完成后将多个新程序集写入磁盘,以及将 .pdb 调试器符号文件与它们一起保存在磁盘上(所有都是作为单独的文件保存操作)。当您将调试器附加到进程时(按 F5 运行应用程序时的默认行为),Visual Studio 需要搜索并加载应用程序的所有程序集和 DLL 的调试器符号以设置断点。
Visual Studio 博客建议使用 SSD:
硬盘类型很重要! 这里还有另一个技巧可以让解决方案加载得更快。Visual Studio 遥测显示,具有 SSD 存储的机器加载解决方案的速度比普通硬盘快 2-3 倍。因此,如果您使用的是普通硬盘,我们强烈建议您考虑升级到 SSD。虽然理想情况下 Windows、Visual Studio 和您的解决方案都包含在 SSD 中以获得最大影响,但将 Windows 安装在 SSD 上会对您的解决方案加载产生巨大影响。