eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingpytanie z mutexów
Ilość wypowiedzi w tym wątku: 94

  • 1. Data: 2013-06-20 12:35:33
    Temat: pytanie z mutexów
    Od: firr kenobi <p...@g...com>

    nie zmam sie za bardzo na rozmaitych prymitywach
    sluzacych do lockowania kawałków ramu (a jest tego
    kilkanascie z tego co kojarze) stad pytanie :
    czy najbardziej podstawowy z tych elementali
    (jak mniemam mutex) pozwala zapisac jakies
    informacje przy lokowamiiu jakiegos kawalka
    ramu (tak by inny watek ktory sie na to natkanł
    mogl to przeczytac) czy tez nie jest to praktykowane?

    drugie pytanie czy jest jakias (chocby zwyczajowa)
    hierarchia tych prymitywow i czy ich nazewnictwo
    juz sie jakos ulozylo czy tez panuja rozne nazewnictwa i jaki to jest ten standardowy
    set?




  • 2. Data: 2013-06-21 18:33:03
    Temat: Re: pytanie z mutexów
    Od: Edek <e...@g...com>

    Dnia Thu, 20 Jun 2013 03:35:33 -0700 po głębokim namyśle firr kenobi
    rzekł:

    > nie zmam sie za bardzo na rozmaitych prymitywach sluzacych do lockowania
    > kawałków ramu (a jest tego kilkanascie z tego co kojarze) stad pytanie :
    > czy najbardziej podstawowy z tych elementali (jak mniemam mutex) pozwala
    > zapisac jakies informacje przy lokowamiiu jakiegos kawalka ramu (tak by
    > inny watek ktory sie na to natkanł mogl to przeczytac) czy tez nie jest
    > to praktykowane?

    Mutex jest rozwiązaniem abstrakcyjnym, nie sprzętowym. W tym sensie,
    że programista w każdej chwili może zapomnieć o mutexie i sprzęt
    na to pozwoli.

    Metainformacje w RAM istniały w starych Sunach, tagged data,
    ale dotyczyły typu danych a nie wielodostępu. Technicznie
    wykonalne, ale nie praktykowane. Nowe procesory mają mieć
    wsparcie TM - specyfikacje i użycie już istnieją, tylko
    samego sprzęta niet.

    > drugie pytanie czy jest jakias (chocby zwyczajowa)
    > hierarchia tych prymitywow i czy ich nazewnictwo juz sie jakos ulozylo
    > czy tez panuja rozne nazewnictwa i jaki to jest ten standardowy set?

    Mutex i lock to dwie nazwy tego samego pomijając może niuanse. Condition
    variable jest praktycznie uniwersalną nazwą. W Win nazwy są takie same
    jak nazwy ich metod - nie wiem. Są też praktyczne implementacje
    tychże, takie jak Futex (na linuksie praktycznie w userspace
    wszystkie mutexy są zaimplementowane przez futex, w kernelu
    częściej jako spinlock)

    Z podstawowych są też inne bestie: CAS, semafor, monitor (obudowany
    cukrem mutex, odrobinę co innego), atomic sth, bariera, spinlock
    i parę innych, w tym odmiany mutexów: rekursywne, RWLock.

    Istnieje też abstrakcyjny Model Pamięci, bez którego wszystkie
    powyższe nie mają najmniejszego sensu, oraz sprzętowy Model
    Pamięci, bez którego nie dałoby się ich poprawnie zaimplementować.

    Potem jest wiele elementów używających powyższych, jakby wyższego
    poziomu: future, promise, continuation, asynchroniczność,
    kontynuacje, egzekutory, Thread Pools, kolejki, struktury
    danych lock-free, emulowane atomics (dla obiektów zbyt dużych
    aby istniało sprzętowe wsparcie emuluje się na różne sposoby
    semantycznie to samo używając innych operacji sprzętowych),
    dzielone smart pointery, thread cancelation (aka ThreadDeath,
    dziwna i himeryczna bestia), przekazywanie wyjątków pomiędzy
    wątkami, once, jednorazowa statyczna inicjalizacja (wraz z
    obleśnym double-checked locking), thread local storage,
    same wątki i ich wszystkie odmiany - kompletna lista
    byłaby znacznie dłuższa.

    Wielowątkowość nie jest nowa, tylko relatywnie nowa w codziennym
    masowym życiu programistów. Weszła masowo, gdy procesory
    zaczęły mieć masowo najpierw HT a potem wiele rdzeni na
    desktopie - co się stało niedawno, tylko kilka lat temu.

    Powyższe są standardowym zestawem, natomiast większej hierarchii
    w nich nie widzę.

    --
    Edek


  • 3. Data: 2013-06-21 18:52:45
    Temat: Re: pytanie z mutexów
    Od: A.L. <a...@a...com>

    On Fri, 21 Jun 2013 16:33:03 +0000 (UTC), Edek
    <e...@g...com> wrote:

    >Dnia Thu, 20 Jun 2013 03:35:33 -0700 po g??bokim namy?le firr kenobi
    >rzek?:
    >
    >> nie zmam sie za bardzo na rozmaitych prymitywach sluzacych do lockowania
    >> kawa?ków ramu (a jest tego kilkanascie z tego co kojarze) stad pytanie :
    >> czy najbardziej podstawowy z tych elementali (jak mniemam mutex) pozwala
    >> zapisac jakies informacje przy lokowamiiu jakiegos kawalka ramu (tak by
    >> inny watek ktory sie na to natkan? mogl to przeczytac) czy tez nie jest
    >> to praktykowane?
    >
    >Mutex jest rozwi?zaniem abstrakcyjnym, nie sprz?towym. W tym sensie,
    >?e programista w ka?dej chwili mo?e zapomnie? o mutexie i sprz?t
    >na to pozwoli.
    >
    >Metainformacje w RAM istnia?y w starych Sunach, tagged data,
    >ale dotyczy?y typu danych a nie wielodost?pu. Technicznie
    >wykonalne, ale nie praktykowane. Nowe procesory maj? mie?
    >wsparcie TM - specyfikacje i u?ycie ju? istniej?, tylko
    >samego sprz?ta niet.
    >
    >> drugie pytanie czy jest jakias (chocby zwyczajowa)
    >> hierarchia tych prymitywow i czy ich nazewnictwo juz sie jakos ulozylo
    >> czy tez panuja rozne nazewnictwa i jaki to jest ten standardowy set?
    >
    >Mutex i lock to dwie nazwy tego samego pomijaj?c mo?e niuanse. Condition
    >variable jest praktycznie uniwersaln? nazw?. W Win nazwy s? takie same
    >jak nazwy ich metod - nie wiem. S? te? praktyczne implementacje
    >tych?e, takie jak Futex (na linuksie praktycznie w userspace
    >wszystkie mutexy s? zaimplementowane przez futex, w kernelu
    >cz??ciej jako spinlock)
    >
    >Z podstawowych s? te? inne bestie: CAS, semafor, monitor (obudowany
    >cukrem mutex, odrobin? co innego), atomic sth, bariera, spinlock
    >i par? innych, w tym odmiany mutexów: rekursywne, RWLock.
    >
    >Istnieje te? abstrakcyjny Model Pami?ci, bez którego wszystkie
    >powy?sze nie maj? najmniejszego sensu, oraz sprz?towy Model
    >Pami?ci, bez którego nie da?oby si? ich poprawnie zaimplementowa?.
    >
    >Potem jest wiele elementów u?ywaj?cych powy?szych, jakby wy?szego
    >poziomu: future, promise, continuation, asynchroniczno??,
    >kontynuacje, egzekutory, Thread Pools, kolejki, struktury
    >danych lock-free, emulowane atomics (dla obiektów zbyt du?ych
    >aby istnia?o sprz?towe wsparcie emuluje si? na ró?ne sposoby
    >semantycznie to samo u?ywaj?c innych operacji sprz?towych),
    >dzielone smart pointery, thread cancelation (aka ThreadDeath,
    >dziwna i himeryczna bestia), przekazywanie wyj?tków pomi?dzy
    >w?tkami, once, jednorazowa statyczna inicjalizacja (wraz z
    >oble?nym double-checked locking), thread local storage,
    >same w?tki i ich wszystkie odmiany - kompletna lista
    >by?aby znacznie d?u?sza.
    >
    >Wielow?tkowo?? nie jest nowa, tylko relatywnie nowa w codziennym
    >masowym ?yciu programistów. Wesz?a masowo, gdy procesory
    >zacz??y mie? masowo najpierw HT a potem wiele rdzeni na
    >desktopie - co si? sta?o niedawno, tylko kilka lat temu.
    >
    >Powy?sze s? standardowym zestawem, natomiast wi?kszej hierarchii
    >w nich nie widz?.

    Moze ksaizki sa nudne, ale twoje rewelacje rozrywkowe (w szczegolnosci
    ze monitor to mutex). Podobnie ze "bariera to mutex"

    No i najbardziej rozrywkowe to stwierdzenei ze "tego sie uzywa od
    kilku lat"

    A.L.


  • 4. Data: 2013-06-21 20:53:02
    Temat: Re: pytanie z mutexów
    Od: Edek <e...@g...com>

    Kto ma kłopot z czytnikiem i kodowaniem znaków? Możliwe że moja wina,
    używam UTF-8 bo po ustawieniu ISO nie mogę odczytać większości
    postów.

    Dnia Fri, 21 Jun 2013 11:52:45 -0500 po głębokim namyśle A.L. rzekł:

    > On Fri, 21 Jun 2013 16:33:03 +0000 (UTC), Edek
    > <e...@g...com> wrote:

    >>Wielow?tkowo?? nie jest nowa, tylko relatywnie nowa w codziennym masowym
    >>?yciu programistów. Wesz?a masowo, gdy procesory zacz??y mie? masowo
    >>najpierw HT a potem wiele rdzeni na desktopie - co si? sta?o niedawno,
    >>tylko kilka lat temu.
    >
    > Moze ksaizki sa nudne, ale twoje rewelacje rozrywkowe (w szczegolnosci
    > ze monitor to mutex). Podobnie ze "bariera to mutex"

    Firr mógł mieć rację mówiąc, że niektóre nazwy mogą mieć wiele znaczeń
    w tej dziedzinie. Co ma Pan na myśli mówiąc Monitor, poza tym 22'?

    Że bariera to mutex nigdy nie twierdziłem. Wiem natomiast, że da się
    zaimplementować barierę mając mutex i condition, w dość trywialny
    sposób, i często tak się robi w wielowątkowości, że emuluje się
    jedne elementy za pomocą innych, byle graf zależności nie miał
    pętli a mutex jest podstawowym elementem.

    > No i najbardziej rozrywkowe to stwierdzenei ze "tego sie uzywa od kilku
    > lat"

    Dość zabawna złośliwość - zostawiłem cytat mojego posta, który
    zaczyna się od "wielowątkowość nie jest nowa". W moim odczuciu
    wielu programistów, którzy są co najmniej w porządku ma poważne
    problemy ze zrozumieniem, że te same linijki kodu mogą się
    wykonywać jednocześnie w kilku wątkach i co się z tym wiąże.
    Winię za to długotrwały brak wielowątkowości na desktopach /i/
    podejście różnorakich marketingoidalnych guru wspieranytch
    przez Microsoft: "wątki są po to, żeby GUI się nie zawieszało" -
    co jest o tyle bzdurą, że add_idle i podobne wykonuje
    wątek GUI. Rzadko tworzę GUI, ale dodatkowy wątek jest często
    zbędny. Dlatego w świadomości wielu programistów Java jest
    bardziej rozpracowanym tematem niż wątki. Wiek Javy > wiek HT
    na Intelach. Wiek Javy << wiek mutexa.

    Wracając do książek: pewnie poszukam sam, ale Pana doświadczenie
    piechotą nie chodzi i może też przyda się innym, nie tylko
    wrednemu Edkowi ;)

    --
    Edek


  • 5. Data: 2013-06-21 21:02:17
    Temat: Re: pytanie z mutexów
    Od: firr kenobi <p...@g...com>

    >
    > Moze ksaizki sa nudne, ale twoje rewelacje rozrywkowe (w szczegolnosci
    > ze monitor to mutex). Podobnie ze "bariera to mutex"
    >
    > No i najbardziej rozrywkowe to stwierdzenei ze "tego sie uzywa od
    > kilku lat"
    >

    nieststy obawiam sie ze uzytkownik edek
    przepisał to jak leci w wikipedii

    Dla mnie najgorsza jest ta tzw edkowa psychologia
    wtłaczana w grupe w megailościach, wogole mnie to nie intersuje (nie na temat), wrecz
    przeciwnie


  • 6. Data: 2013-06-21 21:32:56
    Temat: Re: pytanie z mutexów
    Od: firr kenobi <p...@g...com>

    > wtłaczana w grupe w megailościach, wogole mnie to nie intersuje (nie na temat),
    wrecz przeciwnie

    jak dla mnie jest to po prostu straszne,
    bezsensowne odpowiedzi są straszne a psychologia jeszcze straszniejsza


  • 7. Data: 2013-06-21 21:50:14
    Temat: Re: pytanie z mutexów
    Od: Bronek Kozicki <b...@s...net>

    On 21/06/2013 17:33, Edek wrote:
    > Metainformacje w RAM istnial‚y w starych Sunach, tagged data,
    > ale dotyczyly typu danych a nie wielodoste™pu. Technicznie
    > wykonalne, ale nie praktykowane. Nowe procesory maja miec‡
    > wsparcie TM - specyfikacje i uzycie juz istnieja…, tylko
    > samego sprzeta niet.

    jest, np tu
    http://www.ebuyer.com/467674-cpu-core-i7-4770-3-40gh
    z-lga1150-box-bx80646i74770

    sprzętowe TM jest u intela zaimplementowane jako "Intel TSX-NI",
    wymienione na tej liście
    http://ark.intel.com/products/75122/Intel-Core-i7-47
    70-Processor-8M-Cache-up-to-3_90-GHz

    tak przy okazji "wyższy" model 4770K tego nie obsługuje:
    http://ark.intel.com/products/75123/Intel-Core-i7-47
    70K-Processor-8M-Cache-up-to-3_90-GHz
    , ciekawe dlaczego.


    B.


  • 8. Data: 2013-06-21 22:26:30
    Temat: Re: pytanie z mutexów
    Od: Edek <e...@g...com>

    Dnia Fri, 21 Jun 2013 20:50:14 +0100 po głębokim namyśle Bronek Kozicki
    rzekł:

    > On 21/06/2013 17:33, Edek wrote:
    >> Nowe procesory maja miec‡ wsparcie TM -
    >> specyfikacje i uzycie juz istnieja…, tylko samego sprzeta niet.

    > sprzętowe TM jest u intela zaimplementowane jako "Intel TSX-NI",
    > wymienione na tej liście
    > http://ark.intel.com/products/75122/Intel-Core-i7-47
    70-Processor-8M-
    Cache-up-to-3_90-GHz

    Po raz pierwszy widzę nazwę Crystall Well, ale jeżeli pójdzie z moją
    płytą to chcę go na gwiazdkę. Nie widzę nowych chipsetów, więc
    pewnie pójdzie. (RAM 76 GB/s?)

    > tak przy okazji "wyższy" model 4770K tego nie obsługuje:
    > http://ark.intel.com/products/75123/Intel-Core-i7-47
    70K-Processor-8M-
    Cache-up-to-3_90-GHz
    > , ciekawe dlaczego.

    O ile to nie była ironia: gamerzy potrzebują unlocked ("K"), Vt-d i TXT
    jest im zbędne. A do przyszłych gier niech sobie kupią nowszy i lepszy,
    polityka cenowa ;)

    --
    Edek


  • 9. Data: 2013-06-21 22:32:29
    Temat: [OT: Intel ARK] Re: pytanie z mutexów
    Od: Edek <e...@g...com>

    Dnia Fri, 21 Jun 2013 20:26:30 +0000 po głębokim namyśle Edek rzekł:

    > Po raz pierwszy widzę nazwę Crystall Well, ale jeżeli pójdzie z moją
    > płytą to chcę go na gwiazdkę. Nie widzę nowych chipsetów, więc pewnie
    > pójdzie. (RAM 76 GB/s?)

    Taa, pewnie...

    --
    Edek


  • 10. Data: 2013-06-21 22:47:27
    Temat: Re: pytanie z mutexów
    Od: Bronek Kozicki <b...@s...net>

    On 21/06/2013 21:26, Edek wrote:
    > Dnia Fri, 21 Jun 2013 20:50:14 +0100 po głębokim namyśle Bronek Kozicki
    > rzekł:
    >
    >> On 21/06/2013 17:33, Edek wrote:
    >>> Nowe procesory maja miec‡ wsparcie TM -
    >>> specyfikacje i uzycie juz istnieja…, tylko samego sprzeta niet.
    >
    >> sprzętowe TM jest u intela zaimplementowane jako "Intel TSX-NI",
    >> wymienione na tej liście
    >> http://ark.intel.com/products/75122/Intel-Core-i7-47
    70-Processor-8M-
    > Cache-up-to-3_90-GHz
    >
    > Po raz pierwszy widzę nazwę Crystall Well, ale jeżeli pójdzie z moją
    > płytą to chcę go na gwiazdkę. Nie widzę nowych chipsetów, więc
    > pewnie pójdzie. (RAM 76 GB/s?)

    źle patrzysz ... jest nowy chipset Z87 i nowe gniazdo (ale ze "starą"
    liczbą pinów 1150, żeby wszystkich zdezorientować). Zobacz
    http://www.anandtech.com/show/6970/haswell-z87-mothe
    rboard-preview-50-motherboards-from-asus-gigabyte-as
    rock-msi-ecs-biostar-and-evga


    B.

strony : [ 1 ] . 2 ... 10


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: