technologiczny koszt RAM vs SSD

Koszt SSD ciągle maleje, a do tego SSD robią się szybsze. RAM też robi się szybsze, koszt maleje ale nieproporcjonalnie wolniej. Z czego to wynika? Pytam o apekt wyłącznie technologiczny produkcji pamięci, który wpływa na cenę, czyli co jest takie drogie w produkcji RAM co nie jest dla ssd?

Tło rozważań: wydaje się, że dla wielu zastosowań bardziej użyteczny byby pojemny RAMdysk (niechby i DDR2) niż pamięć nieulotna, ale koszt zabija.

Reply to
Marcin Debowski
Loading thread data ...

W dniu sobota, 15 sierpnia 2020 01:00:08 UTC-5 użytkownik Marcin Debowski napisał:

Takie ramdyski pojawiaja sie od czasu do czasu. Ale jakos sie nie przyjmuja.

Czemu? Bo sa bez sensu z punktu widzenia kosztow.

Niezmiernie rzadko trafiaja sie sytuacje kiedy komputer nie potrafi obsluzyc sensownie wycenionej pamieci.

Z takich sytuacji pamietam dwie:

  1. W czasach pentium 1 chipset bodajrze BX (albo HX) potrafil cacheowac tylko pierwsze 64MB RAM. Obslugiwal wiecej ale cachowal tylko 64. W tamtych czasach 64MB ram nie bylo strasznie drogie. Cos na poziomie polowy wyplaty. Wiec jak kowalski chcial to mogl kupic tyle zeby sobie wydajnosc pogorszyc.
  2. Jak ktos ma leciwa plyte i dzis chce ja oblozyc maksymalna iloscia pamieci.

W przypadku #2 problemem nie jest czesto ograniczenie chipsetu czy plyty ale bezsens takiej konfiguracji. Bo powolny procek nawet z duza iloscia ram i tak liczy pomalu w porownaniu do nowszego procesora.

W efekcie zwykly kowalski nie jest w stanie zbudowac uzytecznego komputera w ktorym ram dysk bedzie tanszy i pozyteczniejszy od duzej ilosci ram.

Do miksu mozna dorzucic sytuacje z dyskami typu shadow. Czyli mamy system, ladujemy go do ramdysku i na nim sobie user pracuje. Jak user skonczy to cala zawartosc systemu jest przywracana do stanu inicjalnego. Taki system czasem ma sens. Ale na tyle rzadko zeby sie zwyly kowalski albo zwykla firma tym nie przejmowala.

Co do ceny/gestosci/kosztow pamieci to nie pamietam jak to sie ksztaltuje. Cos mi sie obilo o oczy ze gdzies kiedys ceny jednego byly bardziej korzystne i jakies firmy produkujace polprzewodniki sie przelaczyly na produkcje tego bardziej korzystnego typu pamieci.

Dzis ram jest tani jak barszcz.

Jak chcesz duzo to sobie zajrzyj na akucje ze sprzetem serwerowym. Tam mozna wyhaczyc calkiem mocne konfigi za psie pieniadze. I poprosic o maks pamieci.

Kiedys sprawdzalem koszty i wychodzilo naprawde fajnie. Cos w rodzaju 256GB ram plus parenascie rdzeni za 5-7kpln.

Wiec jakbys chcial duzo ram to jestes w stanie sobie to zmontowac.

Dzis 32GB moduly nowki to koszt na poziomie 300-400pln. Chcesz 768GB ram?

formatting link

Smieszne tu jest to ze zeby wczytac z dysku te 700GB potrzebujesz jakichs 3-5-10 minut w zaleznosci od tego jakie dyski i co wczytujesz i co z tym robisz przy wczytywaniu. Troche jak czekanie na atari zeby gre wgrac ;)

Reply to
sczygiel

Pan Cray sprzedawał takie ramdyski 30-40 lat temu. Kilka rocznie. :-) Cena może i zabijała w sensie metaforycznym, ale produkty wynikające obliczeń na tym sprzęcie zabijały już jak najbardziej dosłownie.

Pozdrawiam, Piotr

Reply to
Piotr Wyderski

Gigabyte wypuścił zdaje się jakieś 1000szt. tego:

formatting link
Widziałbym na pcie, min 64-128GB, ale nie kurna po obecnej cenie RAMu.

Reply to
Marcin Debowski

Dostrzegłeś niszę rynkową, więc zrób to na FPGA i sprzedawaj. :-)

Pozdrawiam, Piotr

Reply to
Piotr Wyderski

Mylisz bufor dyskowu z cache procesor, a inicjator wątku zapewne pyta w kontekście bufora dyskowego.. Od samego początku kernel używał cały dostępny wolny ram na bufor dyskowy i nigdy nie było potrzeby tworzenia ramdysku bo _zawsze istniał_ na całej dostępnej pamięci.

Reply to
Marek

użytkownik Marcin Debowski napisał:

RAM to jedna komórka pamięci na 1 bit. SSD to jedna komórka pamięci na 1 bit w droższych dyskach i 2/3 komórki w tanich dyskach.

formatting link

Takie sztuczki kruczki. Zagęszczenie bitów rośnie to i cena spada. Nie musisz kupować takiego badziewia, możesz sobie kupić SSD gdzie jedna komórka pamięci = 1 bit.

Reply to
obserwator1439

Użytkownik "Marcin Debowski" napisał w wiadomości grup dyskusyjnych:ERKZG.177724$ snipped-for-privacy@fx44.ams...

Calkiem inny proces chyba. DRAM wymaga robienia glebokich kondensatorow. SRAM to kilka tranzystorow.

A Flash to obecnie jakby jeden tranzystor mosfet ...

procki 64bit, to RAM mozna zapakowac sporo, Ramdysk prawie niepotrzebny.

I odwrotnie - z uwagi na ograniczona ilosc zapisu, to do komputera z SSD trzeba duzo RAM, zeby swap nie byl uzywany ...

J.

Reply to
J.F.

I to jest tak bardzo (nadal) drogie? Tyle się tego RAMu produkuje...

To jest bardziej kwestia ceny i możliwości danej płyty. 128G i więcej to raczej nieco wyższa półka. Ale może to kwestia nie tylko ceny, ale braku zapotrzebowania, bo w sumie kto w domu bawi się w jakieś rzeczy gdzie pliki tymczasowe idę w dziesiątki-setki gigabajtów? Pewnie relatywnie niewielu.

Reply to
Marcin Debowski

Bardzo drogie chyba nie, ale moze blokuje mozliwosc postepu.

I czemu ma to byc plik tymczasowy, a nie trzymac w RAM ...

J.

Reply to
J.F.

Bo to już chyba wymaga pomyślunku ze strony twórców oprogramowania. To nie jesy tak, że plik tymczasowy robi za swap, a wkażdym razie niekoniecznie.

Reply to
Marcin Debowski

A to juz zalezy do czego. Czasem wygodniej, czy bardziej naturalnie jest miec dane w plikach, chocby na pare sekund, a czasem zapisywali, bo brakowalo RAM :-)

J.

Reply to
J.F.

No ale teraz "dane w plikach choć na chwilę" ma tylko znaczenie jako pewna uniwersalna struktura IOa nie konkretne miejsce przechowywania (dysk).

Reply to
Marek

Niczego nie myle. Napisalem to w kontekscie ograniczen plyty/chipsetu.

Przeczytaj jeszcze raz co napisalem i zrozum przeslanie.

Reply to
sczygiel

Chlopaki, mieszacie sobie w glowach.

Primo: od dawna swap byl swego rodzaju zabezpieczeniem przed "Out of Memory" i wywaleniem sie programu. Nie byl sposobem na efektywne wykonanie programu. Moze poza czasami amigi albo 386 kiedy sie czlowiek przelaczal z worda na excela i w kazym z nich pracowal chwile. W praktyce swap byl wykorzystywany do relatywnie dlugo okresowego przemiecenia pamieci tak aby nie trzeba bylo kombinowac z gaszeniem i odpalaniem na nowo programow w czasie korzystania z dwu-trzech naraz.

Secundo: Swap stosowany jest rowniez do wywalenia z ram stron z ktorych korzystac nie bedziemy ale musza byc zaladowane do systemu. Dajmy na to ze mamy uruchomiona obsluge Bluetooth ale nawet nie mamy sprzetu do tego. A sterownik i jakis tam program jednak zaladowano do systemu. Podobnie z jakas biblioteka sieciowa co BT obsluguje. Nie ma sensu aby to siedzialo w RAM jak i tak az do wylaczenia kompa ani bajt nie bedzie z tego odczytany/zapisany/wykonany. Wtedy pamiec z takimi stronami wpada do swapa jak tylko OS zdecyduje ze potrzebuje pamieci dla programu albo na bufory dyskowe. I tam se lezy az do rebootu.

Tertio: Duze swapy byly kiedys proponowane bo ktos durnie zalozyl ze jak ktos ma 1GB ram to z dupy powodu musi miec tyle samo swapa. I do czasu pojawienia sie hibernacji to bylo zalozenie z dupy. Jak sie pojawila hibernacja to to zalozenie nadal jest z dupy pod windowsem bo on sobie zaklada osobny plik na hibernacje ale ma sens pod linuxem ktory uzywa swapa do hibernowania.

W rezultacie: Nigdy swapa nie trzeba bylo miec duzo. Trza bylo go miec tyle ile programy zajmowaly sumarycznie na wypadek kiedy pamieci RAM mamy ledwo na OS plus 2-3 srednie programy. Swap sensownie skonfigurowany to doslownie pare GB pod windowsem i ilosc ram pod linuxem jesli uzywamy hibernacji.

Programisci aplikacyjni tu nie maja za wiele do gadania. Jada na slepo i dopoki nie dostana bledu przy alokacji pamieci to wogole sie nie przejmuja czy swap jest czy nie. I to od usera/admina zalezy czy jednak chce aby ten 40GB plik sie dal obrobic na komputerze z 16GB ram. A ze bedzie mu sie to liczyc 6h zamiast 10 minut w sytuacji kiedy by sobie pamieci dolozyl to tez sprawa admina a nie programisty.

trend jest wrecz odwrotny. I bazy danych same sobie implementuja swapowanie (w postaci tymczasowych tablespaces), i przegladarki sobie cachuja dane na dysku, i jakies fotoszopy czy inne gimpy pracuja na swoich plikach tymczasowych nie trzymajac wszystkich danych w ram i tak dalej...

W sytuacji kiedy sie hibernacji nie uzywa swap moze byc symboliczny.

Podsumowujac, dzis swap jest uzywany glownie do hibernacji i do trzymania w nim stron pamieci ktorych nikt do niczego nie uzywa a musza byc zaladowane (jest tego srednio pare-parenascie-paredziesiat MB).

I na koniec: Swap dysku SSD nie zabije. Po prostu nie ma tam az tylu zapisow zeby nabic licznik.

SSD moze zuzyc... przegladarka. Bo te maszkarony zapisuja w cholere smieci na dysku. Da sie to od biedy ogarnac ale i tak beda zapisywac jakies dane ktorych niekoniecznie mozemy potrzebowac w dobie szybkiego internetu. Ale to juz nawiasem.

Reply to
sczygiel

Jeśli przy stałej wielkości RAM (jako RAM) i nieistniejącym systemowym pliku swap ustawi się katalog dla operacji tymczasowych na RAMdysk to ma się niejako gwarancje operacji z użyciem tego RAM/dysku bez wzgledu na intencje autorów oprogramowania.* Jeśli dla odmiany będzie wyłącznie dostępny RAM to już takiej gwarancji nie ma.

*) no chyba, że autorzy łżą jak psy lub nie mówią całej prawdy.
Reply to
Marcin Debowski

Nie wolno tego tak generalizować bo to zależy od użycia. Na typowym laptopie, 8GB ram, dysk SSD, najnowszy Debian, dwie przeglądarki web wyłączyłem swap bo wydawało się, że 8GB powinno wystarczyć. To spowodowało, że co kilka dni miałem oom-killer, który robił totalny zwis na kilkanaście minut (zanim posprzątał i odżył). Dodanie swapa rozwiązało problem.

Reply to
Marek

Pisałem do pracy dyplomowej program na Cray XMP, w Fortranie. Co się nagimnastykowałem, by optymalnie wykorzystać procesor. Numeryczna integracja 3D. Udało mi się wyciągnąć 98% teoretycznej mocy przerobowej procesora. Ale musiałem optymalizować wszystkie pętle, by nie przerwać pipelines. To było w 1986 roku ;-)

Waldek

Reply to
Waldemar

Przeciez dokladnie to opisalem we fragmencie ktory wyciales. Ale dam ci hinta gdzie zawaliles: Trza bylo zobaczyc co ci ram zjadlo. Bo dodales 8GB swapa i teraz zuzywasz SSD zamiast zobaczyc ze jakas stronka ci zjada ram w przegladarce i ja okresowo ubic zeby sie nie pasla.

Zgeneralizowales ze dwie przegladarki i tyle a nalezy zajrzec glebiej. W FF i w chrome jest task manager ktory ci pokaze ktora zakladka zjada ram. Jak jakas ciagle grubnie to masz problem z stronka a nie z ramem. Oczywiscie dodanie swapa pomoze ale i nieco zamuli i jak nie wykonasz rebootu albo zamkniecia przegladarki/zakladki to zamiast paru dni to samo sie powtorzy po kilkunastu.

U siebie ogarnalem temat tak ze przed hibernacja zamykam FF i sesje mi sie zapisuja. Po odhibernowaniu (zamkniety FF nie leci do swapa czyli jest nieco szybciej) uruchamiam FF i on pamieta wszystkie zakladki ale wczytuje tylko te na ktorej bylem ostatnio. Reszte wczyta jak sie na nia pierwszy raz przelacze.

Dzieki temu moge miec otwarta cala moja prace wlacznie z VM-kami, eclipse, arduino itp.

Ogolnie wylaczenie swapa kompletnie, sensu nie ma. Ani na linuxie ani na windowsie. Windows jest przy tym bardziej upierdliwy, choc nie wiem czy 10-ka tez...

Reply to
sczygiel

Chyba śmiesz żartować, że czymś takim będę sobie głowę zawracał.

Bo hibernacja to głupi pomysł, tylko suspned do ram ma sens

Reply to
Marek

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.