[#1] MemOptimizer
Bawił się ktoś z Was tym programem Rzeczywiście przyspiesza dostęp do pamięci?
[#2] Re: MemOptimizer

@QkiZ, post #1

Działanie takich programów jest bardziej teoretyczne i praktycznie niezauważalne.
[#3] Re: MemOptimizer

@RomanWorkshop, post #2

Co to znaczy teoretyczne Właśnie go testuje i na razie nie zauważyłem szybszej pracy. Teoretycznie powinno być również nieco więcej wolnego RAMu.
[#4] Re: MemOptimizer

@QkiZ, post #3

To znaczy, że takie programy nic nie dają ;) Poza tym każdy działający program zwalnia system, a nie go przyspiesza. I tak będzie w przypadku tego programu.
[#5] Re: MemOptimizer

@QkiZ, post #1

jest jeszcze TLSFMem 1.9.by.cosmos oim zdaniem najlepszy mozliwe ze Cosmo`s zaimplementuje to wewnatrz exec.library. Tu mozna cos poczytac http://amiga.ct8.pl/?page_id=195

http://www.amiga.org/forums/showthread.php?t=47129

Ostatnia aktualizacja: 04.06.2015 18:39:29 przez HanSolo
[#6] Re: MemOptimizer

@RomanWorkshop, post #4

To znaczy, że takie programy nic nie dają ;) Poza tym każdy działający program zwalnia system, a nie go przyspiesza. I tak będzie w przypadku tego programu.

Romek, jedno pytanie mam: testowałeś ten program czy tylko tak się wypowiadasz Potrzebuje informacji od kogoś kto już coś takiego testował.
jest jeszcze TLSFMem 1.9.by.cosmos oim zdaniem najlepszy mozliwe ze Cosmo`s zaimplementuje to wewnatrz exec.library.

To było by spoko. Zoszczędziło by to pamięć na patche.
[#7] Re: MemOptimizer

@QkiZ, post #6

Absolutnie nie testuje takich programów, bo wiem że one nic nie dają ;) Sprawdź sam i podziel się wrażeniami.
[#8] Re: MemOptimizer

@RomanWorkshop, post #7

Na razie nie zauważyłem żadnych zmian na plus czy minus tego programu. Później sprawdzę dla odmiany TLSFMem w wersji od Cosmosa, dzięki HanSolo.
[#9] Re: MemOptimizer

@QkiZ, post #1

Nie ma programów, które przyśpieszają dostęp do pamięci, bo taki parametr leży w warstwie sprzętowej a nie programowej, pamięć w Amidze działa zawsze z tą samą prędkością, nie ma tu żadnych parametrów które można zmieniać (chyba w A3000 były jakieś zworki i na niektórych akceleratorach do wyboru 60ns/70ns).

Jedyne co mi przychodzi do głowy, to jedynie to, że program podstawia jakieś własne funkcje do zarządzania pamięcią w systemie, przez co wykorzystuje ją efektywniej, np występuje mniejsza fragmentacja, ale fizycznie nie ma możliwości wpływu oprogramowaniem na prędkości podzespołów Amigi.
[#10] Re: MemOptimizer

@sanjyuubi, post #9

W A3000 można zmienić, ale muszą być zainstalowane kości 60ns, i robi się to programowo. We wcześniejszych rewizjach była zworka. Mi sięjednak nie udało przestawić na 60ns, ani na pamięciach Page Mode ani na Static Column - po przestawieniu miałem reset i żółty ekran.
[#11] Re: MemOptimizer

@sanjyuubi, post #9

Dokładnie tak jest. Potem to efektywniejsze wykorzystanie pamięci przeliczają sobie na procenty i coś tam na papierze wychodzi. W praktyce, nie da się pamięci przyspieszyć programowo.
[#12] Re: MemOptimizer

@sanjyuubi, post #9

Nie do końca. Przy systemach z MMU można zmienić konfigurację obszarów pamięci pod kątem ich wykorzystania i wtedy można uzyskać lepszą wydajność. Wszystko zależy od konkretnej aplikacji ale jednak;)
[#13] Re: MemOptimizer

@SuperBuster11, post #10

Tylko, ze w tym przypadku A3000 została zbudowana tak, aby dało radę przeznaczonym do tego programem wybrać czas dostępu, co generalnie polega na wpisaniu jakiejś wartości w odpowiedni rejestr, a resztą zajmuje się sprzęt. W PC masz już od dawna zaprojektowane chipsety tak, abyś mógł sobie modyfikować parametry pracy pamięci, w Amidze wszystko jest niestety na sztywno jak w zegarku, z prymitywnymi wyjątkami jak A3000.
[#14] Re: MemOptimizer

@kiero, post #12

Możesz podać jakiś przykład? Możesz wyłączyć cache albo go włączyć dla danego obszaru pamięci, tylko wtedy, to nie pamięć przyśpiesza, a sam procesor, a jak masz wszystkie cache powłączane, to już Ci żaden program dalej nie przyśpieszy.
[#15] Re: MemOptimizer

@sanjyuubi, post #14

Chodzi o to, że czasami cache dla pamięci lepiej wyłączyć. Do tego dochodzą róźnego rodzaju cache. Np jeżeli masz obszar do którego tylko zapisujesz to czasami lepiej cache wyłączyć. Chociaż faktycznie tak jak napisałeś przyspiesza to w sumie procesor a nie pamięć.
[#16] Re: MemOptimizer

@QkiZ, post #1

Ten program nie przyśpiesza dostępu do pamięci tylko zmniejsza jej fragmentację.
[#17] Re: MemOptimizer

@cholok, post #16

No dobra, nie przyspiesza. Ale defragmentacja pozwala na odzyskanie części pamięci
[#18] Re: MemOptimizer

@QkiZ, post #17

A jak zdefragmentujesz dyskietkę to masz na niej więcej wolnego miejsca? Niestety nie. Dane porozrzucane po nośniku i w jednym kawałku zajmują tyle samo pamięci. Przy działającym programie pamięci masz nawet mniej, bo on sam trochę jej zajmuje. Tak, jak mówiłem nic takie programy nie dają.
[#19] Re: MemOptimizer

@QkiZ, post #17

Niekoniecznie. Sam program zajmie trochę. Teoretycznie redukcja list zwolni trochę, ale trzeba stworzyć nowe struktury i przypuszczalnie program od razu zajmuje jakiś większy bufor. Program przeciwdziała fragmentacji i daje szybszy dostęp do struktur, ale trzeba zadać sobie pytanie czy funkcje alokacji pamięci są krytycznymi częściami programu.
[#20] Re: MemOptimizer

@cholok, post #19

program przeciwdziała fragmentacji i daje szybszy dostęp do struktur

Zaraz zaraz. To przyspiesza czy nie przespiesza
A jak zdefragmentujesz dyskietkę to masz na niej więcej wolnego miejsca? Niestety nie.

W przypadku dyskietki to akurat tak. Miejsce przydzielane jest blokami, a nie bajtami. Przy większej ilości operacji gdy dokładasz dane i kasujesz powstają luki w przestrzeni systemu plików, które mogą być nie wykorzystywane, bo są za małe. I przestrzeń się marnuje. Po reorganizacji i poukładaniu danych, można je odzyskać. Co prawda dyskietka w formacie amigowym jest taka mała że straty są nie zauważalne.
Nie wiem w jaki sposób odbywa się to w przypadku RAMu.
[#21] Re: MemOptimizer

@QkiZ, post #20

Dostęp do pamięci a dostęp do struktur (przeszukiwanie systemowych list) to całkiem różne rzeczy. Te drugie przyśpiesza, te pierwsze nie.
[#22] Re: MemOptimizer

@cholok, post #21

Czy to przyspieszenie może mieć znaczenie dla wydajności
[#23] Re: MemOptimizer

@QkiZ, post #20

Niezupelnie dla FFS najmniejsza jednostka jaka mozna zapisac jest 512bajtow.Wynika to z wielkosci tablicy alokacji plikow ktora przy mniejszych wartosciach rozrosla by sie nam zajmujac cenne miejsce. Dyskietka ma bowiem 880kb ale dostepne jest tylko chyba 847Kb do zapisu.

Czyli zapisujac plik ktory ma np. 43bajty tracimy 1KB łącznie miejsca na dyskietce (512 naglowek i 512 reszta danych).Zapisujac 10 takich plikow stracimy 10KB mimo że samych wartosciowych danych mamy tylko 430bajtow.Tego miejsca defragmentacja nie odzyska bo ona polaga na ustawianiu wszystkich części plikow obok siebie zeby odczyt byl szybszy bo glowica nie musi wtedy latac po calej dyskietce tylko jednych ciagniem odczyta.Przy okazji zapis tez jest szybszy bo wolne miejsce tez nie bedzie rozrzucone troche tu troche tam.

Ostatnia aktualizacja: 05.06.2015 10:46:59 przez HanSolo
[#24] Re: MemOptimizer

@QkiZ, post #20

Nie wiem czy ma to jakiś większy sens defragmentowanie ramu, bo ram to jest taki jakby nie było 10x lepszy ssd z tą różnicą że nic się trwale na nim nie zapisuje więc prędkości odczytu i zapisu oraz czasy dostępu są bardzo szybkie (no może przy czip ramie np. a500 już nie aż tak bardzo bo chyba od 60-70 do 100-120ms). W każdym razie efekt dobrej defragmentacji to można zobaczyć gdy przy starcie masz do wgrywania dużo rzeczy do ramu (w przypadku windowsa, w przypadku amigi efekt byłby zauważalny gdy masz rozbudowany system wczytywany z dysku i jeszcze fajnie jak dysk też zdefragmentowany i to tak porządnie). Jedyna użyteczność defragmentacji ramu to teoretycznie komunikacja między ramem a chipsetem i procesorem. W przypadku tradycyjnych HDD i windowsa naprawde dobry program do defragmentacji potrafi zbić uruchamianie mocno zaśmieconego windowsa 7 z np. 52sekund do 36s oraz widać że np. przeglądarka internetowa odpala się "od razu", ale w przypadku ramu nie sądzę by to coś pomagało.
Żeby to naprawdę coś pomogło to musi to być bardzo dobrze przemyślany skonstruowany i napisany program. Dla przykładu, windowsowy wbudowany defrag jest tak słaby że od czasu xp do win 7 to w win 7 już nie pokazuje graficznie nawet tego co zrobił by ukryć jaki jest słaby i potrafi zamiast pomóc to czasem pogorszyć. Tym czasem profesjonalny defragmentator za 120zł rocznie z mocno zasyfionego systemu przy użyciu wszystkich najoptymalniejszych opcji potrafi urwać 15-20sekund na samym uruchamianiu komputera i system przez 2-3 tygodnie chodzi lepiej niż świeżo zainstalowany. Ale cena dość spora jak na coś czego użyjesz raz na miesiąc czy dwa, więc sam sobie odpowiedz czy ten defragmentator pamięci ram jest na takim poziomie.
[#25] Re: MemOptimizer

@HanSolo, post #23

Dyskietka ma bowiem 880kb ale dostepne jest tylko chyba 847Kb do zapisu.

Właśnie zrobiłem test. Dyskietka DD 880kB, wolne pokazuje 878kB, wlazło 865kB. Przy pomocy dd stworzyłem jeden duży plik o wielkości 865kB i tak rozmiar dopiero się zmieścił. Przy większej ilości mniejszych plików pewnie jeszcze mniej wejdzie.
[#26] Re: MemOptimizer

@kiero, post #15

Jeśli cache miałby cokolwiek spowalniać, to jedynie w procesorach 68040/68060, gdzie użycie cache wymusza odczyty w serii 128bajtów, czyli 4 cykle po 32bit, ale przeważnie dotyczy to cache danych, gdy następują losowe odczyty z różnych rejonów pamięci, w przypadku cache instrukcji spowolnienie może wystąpić jeśli będzie dużo instrukcji skoków.
W procesorach 68030 jeśli nie korzysta się z trybów burst i niższych te spowolnienia nie występują. Exec i 68040.library same konfigurują mapę pamięci przez MMU, tak aby tylko pamięć RAM była cache'owalna.

Pamięci cache jak i tryby burst wyłączyć sobie może każdy sam, a taki program, który miałby w locie dostosowywać pamięć do programu, musiałby go cały czas analizować, co generalnie wywołałoby duże obciążenie procesora i spowolnienie zamiast przyśpieszenia. Poza tym taki program byłby bezużyteczny na procesorach bez MMU.


Np. jeżeli masz obszar do którego tylko zapisujesz


Jaki jest cel istnienia obszaru do którego się tylko zapisuje? Istnienie takiego obszaru w pamięci RAM nie ma żadnego sensu. Przeważnie zapis nie jest cacheowalny, chyba, że jest włączona opcja copyback/writethrough w 68040/60.

Ciekawe jest też, skąd taki program miałby wiedzieć, czy dany program będzie z jakiegoś obszaru tylko czytać, albo zapisywać.
[wyróżniony] [#27] Re: MemOptimizer

@QkiZ, post #17

Nie, defragmentacja pozwala ci uniknąć takich sytuacji jak brak pamięci na uruchomienie programu o wielkości np. 200kB, gdy widzisz na belce 400kB wolnego miejsca, które jest tak poszatkowane że największy dostępny blok ciągłej pamięci jest mniejszy niż 200kB.

Odzyskać pamięć możesz jedynie, jeżeli usuniesz dane pozostawione przez jakiś zamknięty program, gdy nie zostały one usunięte z zarezerwowanej puli. Mniej śmieci, to mniejsze tablice do przeszukania i szybsze działanie systemu alokacji pamięci, podejrzewam, że bez konkretnego obciążenia zasobów komputera w normalnych warunkach różnicy nie będzie widać.

Generalnie w opisie tego programu jest napisane co on robi.

Ostatnia aktualizacja: 05.06.2015 15:40:50 przez sanjyuubi
[#28] Re: MemOptimizer

@sanjyuubi, post #27

Nie, defragmentacja pozwala ci uniknąć takich sytuacji jak brak pamięci na uruchomienie programu o wielkości np. 200kB, gdy widzisz na belce 400kB wolnego miejsca, które jest tak poszatkowane że największy dostępny blok ciągłej pamięci jest mniejszy niż 200kB.

To jest odpowiedź która mnie satysfakcjonuje. Dzięki za wytłumaczenie.
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem