Các máy tính có nhiều RAM có khả năng nhanh hơn nếu không phải tất cả bộ nhớ thường được sử dụng?


85

Giả sử tôi có một máy tính có bộ nhớ 16 GB. Nếu máy tính của tôi thường chỉ sử dụng khoảng 4 GB và không bao giờ đạt 8 GB, thì nó có nhanh hơn máy tính chỉ có 8 GB bộ nhớ (cùng loại) không? Máy tính của tôi có chạy nhanh như nhau không bằng cách loại bỏ nửa còn lại của 16 GB chỉ còn lại 8 GB?


17
Một phần của khó khăn của câu hỏi này là "khó sử dụng" rất khó xác định đối với bất kỳ hệ điều hành hiện đại nào có bộ nhớ ảo và các tệp ánh xạ bộ nhớ. Ví dụ: đoạn mã ("văn bản") của chương trình thực thi "được sử dụng" hay "bộ đệm"?
R ..

5
Hệ điều hành khác nhau quản lý bộ nhớ khác nhau. Không có hệ điều hành đã được chỉ định trong câu hỏi. Thuật ngữ "là sử dụng" cũng có thể có nghĩa là những thứ khác nhau. Câu hỏi tồi, câu trả lời thậm chí còn tệ hơn.
Jason

Bộ nhớ nhỏ hơn có khả năng nhanh hơn, vì có ít tải trên trình điều khiển địa chỉ bộ nhớ. Tuy nhiên, trên thực tế, tôi nghi ngờ rằng tốc độ đồng hồ được điều chỉnh để tính đến điều này, vì vậy sẽ không có sự khác biệt. (Điều này giả sử rằng RAM "phụ" sẽ chỉ nằm ở đó như một cục và không bằng cách nào đó được đưa vào sử dụng.)
Daniel R Hicks

3
Câu hỏi này thực sự cần một định nghĩa về "đang sử dụng". Mỗi câu trả lời (như được chấp nhận hiện tại) mà yêu cầu bộ nhớ cache nói về việc sử dụng bộ nhớ. Đây có lẽ là định nghĩa hữu ích hơn, nhưng tách biệt các cách sử dụng bộ nhớ khác nhau sẽ rất hữu ích. Tôi cho rằng chúng ta có thể không muốn thảo luận nếu bộ nhớ hoàn toàn không được sử dụng sẽ giúp ...
Nanne

Cũng lưu ý rằng việc có thêm thanh ram tự làm cho nó nhanh hơn, vì cả hai sẽ có thể được truy cập song song.
Tyzoid

Câu trả lời:


112

Có, bởi vì hệ điều hành có thể sử dụng thêm RAM làm bộ đệm đĩa, giúp tăng tốc truy cập dữ liệu trên đĩa.

Mặc dù vậy, RAM phụ sẽ không làm cho việc tính toán giới hạn CPU (không liên quan đến nhiều I / O đĩa) nhanh hơn.


31
Bất kỳ RAM nào không được sử dụng cho các mục đích khác. (Trừ khi bạn có nhiều RAM hơn dung lượng ổ đĩa, điều này là không thể.)
Wyzard

30
Linux nào. Tôi sẽ ngạc nhiên nếu Mac OS không làm như vậy. Thật là ngớ ngẩn phải không.
Wyzard

9
"Không hiển thị" ở đâu? Chạy freetrên hệ thống Linux và xem cột "được lưu trong bộ nhớ cache". Một số ứng dụng cấp cao hơn (như Trình giám sát hệ thống Gnome) không báo cáo bộ đệm là "đang sử dụng" vì RAM có sẵn để sử dụng cho các chương trình khác; kernel có thể loại bỏ cache bất cứ lúc nào.
Wyzard

4
@PTwr - trong trường hợp đó hệ điều hành nên có bộ nhớ đệm các tập tin và không nên cho rằng có rất nhiều tốc độ lên - một đĩa RAM có thể giúp đỡ nếu bạn đang viết - nhưng đo lường sự chênh lệch tốc độ để xem nếu nó là giá trị nó
user151019


59

Vì mỗi hệ điều hành quản lý bộ nhớ khác nhau và không được cung cấp, tôi sẽ trả lời trong ngữ cảnh của Windows 7.

Dưới đây là một ví dụ từ máy tính có RAM 24GB. Mặc dù chỉ có 7 GB hiện được phân bổ là bộ nhớ "Đang sử dụng", 10 GB khác được phân bổ là bộ nhớ "Chờ" và chứa dữ liệu có thể hoặc không thể đọc lại. Nếu nó được đọc, nó sẽ làm cho máy tính của bạn "nhanh hơn". Bộ nhớ "Miễn phí" hiện tại không được sử dụng.

Giám sát tài nguyên

  • "Có sẵn" là Chế độ chờ và Bộ nhớ miễn phí. Nói cách khác, tất cả các bộ nhớ hiện không cần thiết.
  • "Bộ nhớ cache" là bộ nhớ Chờ và Sửa đổi. Tất cả bộ nhớ được sử dụng cho bộ nhớ đệm, với phần được sửa đổi là phần đang chờ ghi vào đĩa trước khi chuyển sang chế độ chờ.
  • Bộ nhớ "Tổng" là tất cả bộ nhớ ngoại trừ Phần cứng dành riêng.

Nếu bạn muốn tìm hiểu thêm về việc sử dụng bộ nhớ trong Windows 7, TechRepublic có một bài viết tuyệt vời .


Vậy điều gì sẽ xảy ra nếu máy tính này, dưới tải này, có thêm 8 GB? Tôi nghi ngờ "không có gì", nhưng tôi cũng nghi ngờ rằng người dùng có tải nặng hơn hoặc thời gian hoạt động lâu hơn sẽ có nhiều bộ nhớ cache hơn.

3
@Jonof ALLTrades Tôi đồng ý. Một điều mà bài viết tôi liên kết không nói đến là SuperFetch (một dịch vụ mặc định trong Windows 7). SuperFetch tải mọi thứ vào bộ nhớ trước khi chúng được truy cập. Nó ghi lại các mẫu sử dụng trong một tệp và mất vài lần khởi động lại / ngày để tối ưu hóa hoàn toàn.
Jason

Điều này cũng xảy ra trong Linux?
Casper

16

Nếu hệ điều hành chỉ sử dụng 4GB trên 8GB, nó sẽ chạy không khác gì máy sử dụng 4GB trong số 16GB.

Ram không được sử dụng không ảnh hưởng đến hiệu suất của máy.

Tuy nhiên, tình huống lý tưởng là để HĐH sử dụng gần như tất cả RAM có sẵn. Hệ điều hành và ứng dụng sẽ yêu cầu những gì họ cần và ram còn lại nên được sử dụng làm bộ đệm - với một phần miễn phí có lẽ để tránh hoán đổi nếu một ứng dụng cần nhiều ram hơn. Bộ nhớ cache vẫn được tính là "đã sử dụng" và sẽ xuất hiện dưới dạng được sử dụng trong các công cụ không có bộ nhớ.

Bộ nhớ cache sẽ mất thời gian để xây dựng nên bạn sẽ không thấy điều này khi khởi động. Nếu sau một thời gian, máy vẫn không sử dụng thêm 4GB mà có lẽ nó đang chạy HĐH 32 bit không thể xử lý nhiều hơn 4GB (thông thường).


4
Nó phụ thuộc vào việc bạn có xem bộ đệm đĩa là RAM "đã sử dụng" hay không. freeChương trình Linux báo cáo cả hai cách, ví dụ.
Wyzard

Tôi nghĩ những gì gui đại diện cho người dùng và tình hình thực tế có thể khác nhau. RAM được sử dụng cho bộ đệm được sử dụng bất kể công cụ userland có che giấu thực tế đó cho người dùng hay không.
Paul

"Nếu sau một thời gian, máy vẫn không sử dụng nhiều hơn 4GB ..." -> Một lần nữa, bộ nhớ đệm đĩa rất tuyệt nhưng nó sẽ không thực sự lấp đầy tất cả RAM miễn phí của bạn nếu bạn có nhiều thứ có thể được lưu trong bộ nhớ cache - - nó chỉ lưu trữ những gì bạn thực sự đã sử dụng và hiện tại thì không , có thể không nhiều hơn một vài GB trừ khi các hoạt động bình thường của bạn bao gồm số lượng lớn photoshop, v.v. hoặc máy tính là một máy chủ bận rộn với rất nhiều tập tin tĩnh.
goldilocks

@goldilocks Rõ ràng "sau một thời gian" là mơ hồ, nhưng dự định có nghĩa là "sau khoảng thời gian mà Windows và các ứng dụng đã gây ra để tải đủ dữ liệu vượt quá 4GB". Việc sử dụng của tôi là khá thường xuyên và vượt quá thường xuyên này. Vấn đề là nếu giới hạn này bị tấn công, nó có thể giải quyết các ràng buộc hơn là không cần thêm bộ đệm.
Paul

9

Một phần khác của phương trình là cách các thẻ nhớ được cấu hình. Cụ thể, bo mạch chủ hiện đại hỗ trợ bộ nhớ kênh đôi cho phép bạn tăng gấp đôi băng thông giữa bo mạch chủ và bộ nhớ; nếu bạn đã ghép nối bộ nhớ và bạn lấy ra 1 trong mỗi cặp, bạn đã mất bộ nhớ này và do đó, quyền truy cập bộ nhớ của bạn khi thực hiện nhiều lần chuyển bộ nhớ sẽ bị giảm, điều này sẽ khiến các hoạt động mất nhiều thời gian hơn. (Ngược lại, nếu bạn tình cờ có 8 Gig bộ nhớ nhanh hơn được ghép nối với 8 Gigs bộ nhớ chậm hơn và chỉ sử dụng 8 Gigs, lấy ra 8 hợp đồng chậm hơn và sửa chữa nhanh hơn sẽ cho phép bạn chạy nhanh hơn vì bạn vẫn nhận được kênh kép nhưng không phải là không cần làm chậm bộ nhớ chậm nhất)

Nhưng, nói chung, các công cụ lưu trữ được đề cập trong các câu trả lời khác sẽ là một đóng góp lớn hơn cho hiệu suất tổng thể.


3

Loại bỏ một nửa bộ nhớ 16GB sẽ làm chậm máy tính của bạn.

Điều này giữ ngay cả khi bạn không bao giờ sử dụng gần 8GB bộ nhớ.

Phần mềm của nó được trình bày trong các câu trả lời khác và sử dụng HĐH để sử dụng RAM thay vì đĩa.

Tuy nhiên, bạn có thể thấy một phần cứng được điều khiển để đạt hiệu suất bằng cách giảm một nửa dung lượng RAM có sẵn. Lý do là các bus RAM sử dụng kiến ​​trúc đa kênh, nghĩa là máy tính có thể truyền dữ liệu giữa nhiều mô-đun RAM cùng một lúc.

Có lẽ máy tính của bạn là kênh đôi. Trong trường hợp đó, bạn có thể loại bỏ 2 trong số 4 mô-đun RAM 4GB mà không có tác động hiệu suất bắt buộc về phần cứng. Tuy nhiên, loại bỏ 1 trong 2 mô-đun RAM 8GB sẽ ảnh hưởng đến hiệu suất.

Nếu bạn có kiến ​​trúc RAM bốn kênh, bạn sẽ thấy một lần thực hiện ngay cả khi ram của bạn là các mô-đun 4GB.


2

Nếu bộ nhớ đã hết tối đa hoặc 99% bạn sẽ mất tốc độ vì tệp trang nằm trên đĩa cứng. Ổ cứng thậm chí không thể đến gần tốc độ của RAM vì RAM được truy cập trực tiếp bởi cpu tùy thuộc vào tốc độ bus.

Windows sử dụng khoảng 3-4 GB dung lượng ram không tính các ứng dụng khác. Tôi đã chạy 16 GB trong nhiều năm nay và thực sự không bao giờ cần nhiều hơn 8gb. Trên thực tế, người dùng PC avg không bao giờ sử dụng nhiều hơn 4 - 6 GB để chơi game. Tôi chỉ thấy nó đạt gần 12 gb một lần khi nén phim hoặc làm gì đó chuyên sâu về RAM thường phải làm với đa phương tiện và CPU đa lõi sẽ là cách duy nhất bạn cần nhiều hơn 8gb. và vâng, nó sẽ chạy nhanh như vậy. IMO.

Nhàn rỗi sau 1 ngày thời gian hoạt động: nhập mô tả hình ảnh ở đây nhập mô tả hình ảnh ở đây

Nhàn rỗi sau 2 ngày hoạt động: nhập mô tả hình ảnh ở đây nhập mô tả hình ảnh ở đây

Windows càng có nhiều RAM thì càng có nhiều RAM sử dụng.

nhập mô tả hình ảnh ở đây

Về mặt Windows 7 sử dụng RAM để làm cho quá trình nhất định nhanh hơn ở đây là một ví dụ.

nhập mô tả hình ảnh ở đây

Chkdsk tối đa hóa RAM để tăng tốc bộ nhớ đệm lần lượt tăng tốc hiệu năng và thời gian kiểm tra đĩa, vì vậy trong trường hợp này thực tế sẽ làm nhiều hơn = nhanh hơn ...


1
Windows 7? Ngay cả với rất nhiều thứ, tôi hầu như không vượt quá 2G.
Simon Kuang

Càng nhiều RAM, Windows 7 sẽ càng sử dụng nhiều hơn ... nó sẽ bị dao động do chương trình bạn đã mở và hiện đang mở cho đến khi các dịch vụ và ứng dụng giải phóng bộ nhớ, nó sẽ dao động đều đặn .. liên quan đến câu hỏi thực tế. 8GB sẽ có nhanh như 16GB có và không tùy thuộc vào việc bạn đang sử dụng máy tính để làm gì. Trong các trường hợp thông thường, bạn sẽ không cần nhiều hơn 8GB và không bị giảm hiệu năng thực sự nếu sử dụng phổ biến như chơi game hoặc duyệt web.
MORBiD

2

Trong thực tế, câu trả lời có nhiều khả năng là "KHÔNG" cho câu hỏi như đã nêu. Q. cho biết "(mức sử dụng) không bao giờ đạt tới 8 GB" và đề cập đến "cùng loại bộ nhớ", do đó, yếu tố có khả năng nhất ảnh hưởng đến tốc độ (bộ đệm đĩa) sẽ không bị ảnh hưởng. Một ví dụ thực tế phổ biến là các máy chủ cơ sở dữ liệu có đủ bộ nhớ để đệm toàn bộ đĩa cứng - ví dụ: với 4GB tệp và 2GB bộ nhớ được phân bổ quy trình / hệ thống không được hưởng lợi từ hơn 8GB bộ nhớ.

Ngoại lệ:

Nhiều bộ nhớ hơn có thể làm chậm chế độ ngủ đông - trên hệ thống của tôi với 32GB bộ nhớ và ổ SSD, khởi động nguội nhanh hơn đáng kể so với việc đánh thức nó khỏi chế độ ngủ đông vì nó tiết kiệm toàn bộ 32GB khi ngủ đông, nhưng khởi động lạnh cần ít đọc hơn. Giảm bộ nhớ sẽ tăng tốc hệ thống.

Sẽ nhanh hơn nếu bạn truy cập nhiều đĩa cứng hơn và hầu hết mọi người có mức sử dụng đĩa nhiều hơn bộ nhớ còn lại để đệm, vì vậy bộ nhớ thêm sẽ giúp ích. Ngoài ra, nhiều báo cáo O / S chỉ là một phần của việc sử dụng là "sử dụng" và phần còn lại được tính là bộ đệm không "sử dụng". (Linux báo cáo việc sử dụng cả bao gồm và không bao gồm bộ đệm).

Các kênh bộ nhớ ảnh hưởng đến hiệu suất: [Nếu xóa bộ nhớ có nghĩa là bạn giảm số lượng kênh bộ nhớ đang sử dụng thì hệ thống sẽ chậm lại khi Foon chỉ ra chính xác]

[sửa:] David Schwartz nhận xét rằng việc giảm bộ nhớ sẽ giảm các giới hạn cho ánh xạ bộ nhớ riêng tư, có thể sửa đổi dưới các cửa sổ. Windows rõ ràng giới hạn tổng số lượng đặt trước này trong tổng số bộ nhớ cộng với trao đổi để bạn có thể hết tài nguyên này mặc dù có "bộ nhớ trống" được báo cáo (vì bộ nhớ thực / trao đổi không được phân bổ cho đến khi một trang được truy cập, nhưng nó không được tính là sử dụng bộ nhớ). Linux hoạt động khác nhau - mỗi quy trình có thể phân bổ tối đa tổng bộ nhớ và kích thước trao đổi và tổng số trên tất cả các quy trình có thể vượt quá tổng bộ nhớ cộng với trao đổi.


1
Về cơ bản, bạn chỉ khẳng định rằng "không" là câu trả lời đúng nhưng đừng nói tại sao.
David Schwartz

Điều này là để đáp lại câu trả lời được chấp nhận - Tôi không có điểm đại diện để nhận xét trực tiếp về nó - xin lỗi vì sự nhầm lẫn. Để làm rõ, trong trường hợp không rõ ràng, bạn chỉ sử dụng nhiều bộ nhớ cho bộ đệm đĩa cứng như thực tế đã đọc hoặc ghi - nếu không sử dụng nhiều đĩa hoặc không bao giờ được truy cập, thì bộ nhớ thêm sẽ không ' t làm cho một sự khác biệt.
iheggie

1
Ví dụ tôi đã đưa ra của máy chủ cơ sở dữ liệu là một ví dụ trong đó bộ nhớ thêm tạo ra sự khác biệt nhỏ - tất cả các đĩa trong quá trình sử dụng đều được đệm.
iheggie

Điều gì về thực tế là nhiều RAM hơn có nghĩa là nhiều cửa hàng sao lưu hơn có thể cho phép HĐH cho phép phân bổ nếu không nó sẽ từ chối?
David Schwartz

Trong ví dụ của tôi về máy chủ DB - không có sự khác biệt nào cả vì nó sẽ không bao giờ từ chối phân bổ vì thiếu bộ nhớ trống. Phân bổ nào sẽ từ chối O / S nếu a. Tất cả các quá trình trong bộ nhớ, b. toàn bộ đĩa đã được đệm trong bộ nhớ, c. nó có bộ nhớ miễn phí và d. một số giới hạn khác không bị vượt quá (ví dụ: giới hạn kích thước / bộ đệm / kích thước địa chỉ tối đa)?
iheggie

0

Phân mảnh bộ nhớ là một lý do khác để có thêm bộ nhớ. Nếu bạn có 8GB RAM và bạn có xu hướng sử dụng 80%, đặc biệt trong các trường hợp sử dụng hiện đại (có nhiều thay đổi bộ nhớ, chẳng hạn như từ mở và đóng các tab trình duyệt), cuối cùng bạn sẽ bị phân mảnh đáng kể.

Việc bổ sung thêm 8GB RAM khiến cho nhiều khả năng HĐH sẽ tìm thấy các không gian bộ nhớ liền kề có sẵn, nghĩa là việc khởi động lại ít thường xuyên hơn là cần thiết để tránh suy giảm hiệu năng.


Tôi hiểu rằng sự phân mảnh bộ nhớ là thứ có thể xảy ra trong không gian bộ nhớ của một quá trình, là ảo trên các hệ thống hiện đại điển hình và nói chung nó không áp dụng cho hệ thống. Vì bộ nhớ vật lý được chia thành các trang, được ánh xạ riêng vào không gian bộ nhớ ảo của các quá trình, phân mảnh sẽ là một khái niệm không có kinh nghiệm. Xin hãy sửa cho tôi nếu tôi đã hiểu sai điều gì đó.
Thomas Padron-McCarthy

0

Có thể, nhưng không nhất thiết. Trong số những thứ khác, một trong những điều RAM cho phép máy tính làm là cho phép ứng dụng phân bổ bộ nhớ mà chúng không bao giờ có thể sử dụng. Nếu hệ thống không có đủ kho lưu trữ dự phòng (bao gồm RAM) để cho phép mọi phân bổ mà nó đã phát hành cho đến nay sẽ tiêu tốn nhiều bộ nhớ nhất có thể, hệ điều hành sẽ phải từ chối các phân bổ đó hoặc quá mức. Một số hệ điều hành không bao giờ thừa và hầu như tất cả các hệ điều hành hiện đại đều giới hạn số lượng vượt mức mà chúng cho phép.

Vì vậy, bộ nhớ không được sử dụng có thể cải thiện hiệu suất bằng cách cho phép các hoạt động có khả năng yêu cầu RAM thành công nếu không chúng sẽ thất bại.


-1

Nhiều ram không tăng tốc máy tính. Ít ram "làm chậm" máy tính.

Máy tính có tốc độ tối đa vật lý của chúng (điều này bao gồm cả ép xung) và không có gì có thể làm cho chúng nhanh hơn thế.


3
Như được thể hiện trong câu trả lời của Wyzard, toàn bộ "máy tính", bao gồm quyền truy cập đĩa, trong đó nhiều ram sẽ tiết kiệm bộ nhớ đệm hơn và do đó tăng tốc nó.
vui lòng xóa tôi

Bạn có nghĩa là chúng ta có thể tăng giới hạn tốc độ vật lý của máy tính bằng cách thêm terabyte ram vào nó?
Xtro

Có ổ đĩa cứng vào tài khoản, có.
vui lòng xóa tôi

BTW, RAM ít hơn không phải lúc nào cũng làm chậm máy tính. Bộ đệm L3 nhiều lần làm chậm máy tính vì lỗi bộ nhớ cache.
vui lòng xóa tôi

2
Tôi tìm thấy câu trả lời của bạn. Có, 'giới hạn tốc độ tối đa' của CPU là tốc độ tối đa của CPU. Chương trinh hay. Tuy nhiên, từ quan điểm thực tế , so với PC chỉ có đủ RAM, một PC có RAM dư sẽ hoạt động nhanh hơn một chút.
Joe
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.