Apple M1 vs x86

RequiredNickname
  • Rejestracja:prawie 5 lat
  • Ostatnio:około 12 godzin
  • Postów:613
1

Jakiś czas temu miała miejsce premiera komputerów Apple zbudowanych w oparciu o SoC na bazie ARM (M1) zamiast klasycznego intela w architekturze x86.

Chciałbym zasięgnąć opinii osób nieco mocniej zorientowanych na kwestiach stricte powiązanych z hardware'em (RISC vs CICS) w kontekście wydajności.
https://www.purepc.pl/apple-m1-przetestowany-w-geekbench-arm-mocniejsze-od-core-i9

Jak to jest, że mamy 2020r, układy ARM są w powszechnym użytku (czyt. w kieszeni każdego z nas) od lat aż tu nagle okazuje się, że załadowanie pierwszej wersji chipu przeznaczonego do komputerów z miejsca oferuje więcej mocy niż najmocniejsza/jedna z najmocniejszych jednostek intela?
Jak to możliwe, że mądre głowy z intela/AMD/nvidii (wydajność gpu podobno też ma być niesamowita) przez tyle lat same nie zaoferowały takich układów? Przecież w tych firmach pracuje sztab ludzi głowiący się jak zarobić więcej kasy a Apple nie ma technologii z kosmosu.

Inna kwestia która mnie nurtuje to czy te architektury (chociażby za pośrednictwem benchmarków) można od tak porównywać 1:1? Kwestia innego podejścia do instrukcji procesora nie jest tu przypadkiem czynnikiem przez który np. intel nie zdecydował się na produkcję desktopowych chipów na bazie ARM a Apple jest tym kto ma jakieś tam doświadczenie w projektowaniu tego typu układów do smartfonów, wrzuca to do komputera, pokazuje wykresy które nie mają żądnej skali/legendy i wmawia wszem i wobec że są najlepsi?

A może to jednak faktycznie przełom i architektura ARM góruje nad x86 w niemal każdym aspekcie i jest to po prostu droga ewolucji naszych komputerów a firmy pokroju intela za mało wydały na ludzi z wizją i zwyczajnie nie zauważyły, że ich czas się kończy?

jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:6 minut
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4706
9

Mnie raczej nurtuje pytanie - jakim cudem kupowata architektura Intela przetrwała tyle lat.
Zaczęło się od porażki:
https://en.wikipedia.org/wiki/Intel_8008 (w zasadzie był to pierwszy "mikroprocesor 8-mio bitowy")
a potem drogą małych kroków ciągle coś dostawiano. Obecny intel core niby nie ma prawie nic wspólnego z 8008, 8080 czy późniejszym 8086, ale na każdym kroku ewolucji ciągnął trochę (przez kompatybilność) problemy przodków. Były punkty przełomowe (IA-32,Pentium, Intel Core, x64), ale nie było radykalnego "restartu".
ARM też już ma długą historię, ale powstał w czasach (lata 80te) kiedy już troszkę procesorów było na rynku i można było jakieś wnioski wyciągnąć.

Z punktu widzenia programisty asm taki intel to totalny rzyg - ciężko na ten kod patrzeć. Mieszanka rozkazów pochodzących z różnych epok, dziwaczne nazwy rejestrów, totalny brak symetrii itd. (Instrukcja MUL 🤦‍♂️).
ARM to od początku elegancja i symetria (nie wiem czy wszędzie zachowana, ale podstawowe instrukcje takie są). Upraszcza to pisanie kodu... ale i prostsza powinna być konstrukcja procesora.

Ważnym elementem jest np. mniej restrykcyjny model pamięci ARM.. powodujący, że w programach niejawnie pisanych pod x86 mogą objawiać teraz różnego rodzaju race conditions. Nie wiem na ile kompilatory C/C++ to łapią... ale w takiej javie można obserwować inny wynik operacji wielowątkowych pod ARM i Intel (!!!). (Oczywiście - o ile program w javie jest niepoprawnie napisany).
Mniej restrykcji oznacza też więcej potencjalnej mocy z punktu widzenia procesora (mniej "synchronizowania cache", więcej możliwości przestawiania kolejności instrukcji na poziomie procesora)

Niespecjalnie tłumaczy to dlaczego ARMM1 osiąga dobre wyniki na jednym wątku (strzelam, że dzięki symetrii -> prostsza logika -> mniej tranzystorów -> mniej mocy wydzielanej -> można wyższe taktowania osiągnać bez palenia procka).

Piszę to jako laik amator - o procesorach i low level raczej czytam niż naprawdę wiem.
Więc dobrze by było jakby ktoś ogarnięty skorygował błędy.
Btw. miłośnikiem apple to nie jestem... ale w tym przypadku mocno kibicuje, żeby coś z tego wyszło.
Z drugiej strony - już wiele razy wydawało mi się... że Intel doszedł do ściany, nic już z tego nie będzie i zaraz go wygryzą :-). Tak pierwszy raz przy okazji PowerPC (apple też był w to zaangażowany(!)), możliwe, że oddech konkurencji przyczyni się do kolejnego przełomu wydajnościowego u intela (za to bugi w security będą jeszcze bardziej powalające).


jeden i pół terabajta powinno wystarczyć każdemu
edytowany 14x, ostatnio: jarekr000000
stivens
Kiedys ktos, kto cala swoja kariere poswiecil tym wszystkim low-level rzeczom, powiedzial mi po prostu, ze Intel sypal dolarami w to x86 tak uparcie, ze nam wyszla taka historia a nie inna.
jarekr000000
@stivens: intel miał szczęście mieć gotowy i sprawdzony procesor w idealnym czasie - kiedy IBM opracowywał koncepcję PC. Mała decyzja IBM (były rozważane inne alternatywy) ... a gigantyczna kasa dla intela.
stivens
No a potem tym hajsem byl w stanie sie utrzymac i zdobyc dominacje
Korges
  • Rejestracja:prawie 5 lat
  • Ostatnio:około 7 godzin
  • Postów:549
0

Intel od dawna nie pokazał nic konkretnego. Jedyne co go utrzymuje przy życiu to kontrakty. Montowane odgórnie w komputerach np dla "e-sportowców" tzw pc master race. Chociaż ostatnio gdy się okazało że AMD 5xxx nawet na poletku single core czytaj CS:GO robią intela jak chcą to może się nawet i to zmienić.
Co do procesorów ARM ja bym pierw poczekał na testy. Mnie ciekawią temperatury macbooka air (posiada tylko pasywne chłodzenie, żadnego wiatraka) i pro pod obciążeniem .
Sam chciałem wziąć nowego macbooka pro 13", z tym że mnie interesowała ulepszona wersja. Tutaj tylko zrobili upgrade podstawowego modelu.

edytowany 1x, ostatnio: Korges
SI
  • Rejestracja:prawie 14 lat
  • Ostatnio:8 minut
0

Apple już raz zmieniał architekturę, i ma w tym doświadczenie, programów też mniej niż na x86. Intel / AMD jeszcze nie, bo kwestia kompatybilności wstecznej "ubiła" by taki projekt, nie zapominajmy że trzeba by albo emulować x86 (co nie było by takie znowu wydajne) albo też porzucić całe dotychczasowe oprogramowanie na PC i zacząć zupełnie odnowa (co mocno nie spodoba się klientom biznesowym, graczom zresztą też). Zresztą Nvidia kupuje / ła ARM, zapewne nie z troski o rozwój platformy czyli czas raczej przesiadać się nie tylko z X86 ale też i z ARMa na coś innego, najlepiej nie chronionego patentami tak na wszelki wypadek. Windows na ARM zresztą powstał, ale jakoś nikt go nie chce (brak softu).

ps coś mi się obiło kiedyś o oczy że rdzenie x86 mają wbudowanego "tłumacza" na zupełnie inną architekturę, bo bez tego nie dało by się dalej zwiększać wydajności. tak więc może się okazać że tam "pod spodem" coś na kształt ARM-a jest.

TurkucPodjadek
TurkucPodjadek
  • Rejestracja:około 8 lat
  • Ostatnio:około 4 lata
  • Postów:607
7

Wydaje mi się, że sporo robi to, że wszystko jest tam zintegrowane w procesorze (CPU, GPU, pamięć operacyjna, jakieś inne cuda niewidy) - nie trzeba tego jakąś zewnętrzną szyną puszczać, tylko wszystko dzieje się na jednym podwórku. Litografia pewnie też nie jest bez znaczenia (14nm+++++++++ intela kontra jakieś tam naciągane 5nm, ale 5). W kwestii architektury, posiadania odpowiednich instrukcji - to nie wiem jak tu sprawa wygląda (w porównaniu do inteli np) - za cienki w uszach na to jestem, by zabierać głos.

Wiem, że procesory ARM w iPadach Pro (M1 to chyba ich ulepszona wersja) rzeczywiście potrafią, za przeproszeniem, spuścić w kiblu niektóre desktopowce co mają TDP 60 czy 95W w niektórych zastosowaniach, że aż żal na to patrzeć (np. rendering filmów). W pozostałych zastosowaniach - nie wiem. Podobna sytuacja jest np. w przypadku niektórych blockchainów - bitminer to jakieś chińskie grzejniki do liczenia haszy, czyli kopania krypto i w zasadzie tylko i wyłącznie do tego - one z kolei spuszczają w kiblu najmocniejsze GPU (które w to też są niezłe) w tym zastosowaniu. Więc wiele zależy od specjalizacji pod konkretne zadanie.

Geekbench z kolei to największy kłam wśród benchmarków (według mnie, choć nie tylko) - sprawdza "ability" procesorach do jakichś pojedynczych tasków. W geekbenchu, zwyciężyłby np. procesor, który wystarczy, by dał radę pracować max 1 minutę na jakichś mocarnych częstotliwościach typu 5 GHz i tyle. To, że później, spowolniłby do 100 MHz, celem ochłodzenia się, to w GB nie ma żadnego znaczenia, bo nie to jest tam sprawdzane. Innymi słowy Geekbench to jest jak "szacowanie" w ile czasu zawodnik przebiegnie maraton 10 km, na podstawie tego, jak szybko przebiegnął pierwsze 50 m.

Proponuję poczekać na prawdziwe benchmarki i problemy, które wynikną z wprowadzenia tej architektury. Na razie na stole mamy marketing, jakieś przecieki itp - dopóki cały świat się na to nie rzuci, włącznie z badaczami bezpieczeństwa, będzie to owiane tajemnicą.

Disclaimer: też wypowiadam się z racji usera, co głównie czyta/używa, aniżeli projektuje procesory.

jarekr000000
Jak dla mnie geekbench w założeniach jest sensowny, ale jako że nie ma powszechnie dostępnego kodu źródłowego, to w przypadku porównywania różnych platform, faktycznie - jego wyniki należy całkowicie ignorować.
jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:6 minut
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4706
5

@sig:

Apple już raz zmieniał architekturę,

To już 4ta architektura w Macintoszach.

  1. Zaczęło się od 68k, który też był eleganckim procesorem i wydawało się, że intel 86 to nawet nie jest w tej samej lidze. 68000 był w zasadzie 32 bitowym procesorem o 16to bitowej szynie danych(odpowiednik poźniejszego 386sx u Intela). Obie linie procesorów miały kolejne generacje (zaskakują podobieństwa). Mimo że motorola startowała z dużo lepszej pozycji to już na etapie
    68040 vs 486 Intel zaczął doganiać wydajnościowo
    Na etapie Pentium vs Motorola 68060 Intel totalnie odjechał i motorola wypadła z gry.
  2. Potem było PowerPC, na które apple się przeniosło ... i które w końcu też odpadło z wyścigu.
  3. A dopiero potem Intel
  4. ... no i teraz ARM

jeden i pół terabajta powinno wystarczyć każdemu
edytowany 5x, ostatnio: jarekr000000
RequiredNickname
  • Rejestracja:prawie 5 lat
  • Ostatnio:około 12 godzin
  • Postów:613
0

Czyli to wygląda na kolejny etap ewolucji tylko musiał znaleźć się ktoś, kto ma jaja żeby wywrócić swój ekosystem do góry nogami (licząc na większe zyski/możliwości w przyszłości) zamiast odgrzewać kotleta/pudrować trupa licząc worki $$ bo przecież cały świat stoi na tej architekturze.

stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 4 godziny
1
sig napisał(a):

nie zapominajmy że trzeba by albo emulować x86 (co nie było by takie znowu wydajne) albo też porzucić całe dotychczasowe oprogramowanie na PC i zacząć zupełnie odnowa (co mocno nie spodoba się klientom biznesowym, graczom zresztą też).

A ile tego kodu faktycznie jest platform-dependent? Teoretycznie wystarczy przeportowac kompilatory. (zdaje sobie sprawe, ze to tez nie takie hop-siup ale to i tak sie dzieje)

EDIT: Gry to akurat bardzo prawdopodobne, ze korzystaja z hakow pod dana platforme zeby optymalizacje wycisnac.


λλλ
edytowany 2x, ostatnio: stivens
Zobacz pozostałe 9 komentarzy
Wibowit
MS też wypuszczał Windowsa na ARMy, więc sądzę, że trochę czasu spędzili nad optymalizacją .NET. - popatrzyłem na szybko na stronę z binarkami .NETa i wychodzi na to, że MS dopiero na przełomie 2018 i 2019 wypuścił .NETa dla ARMa. Problem w tym, że jest dostępny tylko dla ARM32. Wsparcie dla ARM64 pojawia się przez moment, ale teraz go nie ma. Wsparcie dla ARMowych Windowsów można w skrócie opisać: "too little, too late". Jestem przekonany, że wprowadzenie ARMowych Maków przyspieszy portowanie aplikacji na desktopowe ARMy dużo mocniej niż lata nieudolnych prób Microsoftu.
stivens
@enedil: ja nie mowie, ze tego nie ma tylko ze to trzeba (bylo) przeportowac a nie caly soft
enedil
@hauleth: z tego co kojarzę PyPy nie używa jednak LLVMa, ma swój własny JIT.
Azarien
z Linuxem jest o tyle inna sytuacja, że używa się w większości opensource'owego oprogramowania, które wystarczy że będzie przekompilowane na właściwą platformę. sam niedawno kupiłem RPi 4 z zamiarem użytku desktopowego i większość typowego softu na Linuxa po prostu działa (system jest ARM32, wersja ARM64 w fazie beta) a architektura ma zerowe znaczenie - zgodność z innymi platformami się nie liczy. pod Windows natomiast większość softu jest closed-source i na porządku dziennym używa się starego softu który na pewno nie zostanie przeportowany na nową architekturę.
hauleth
@enedil: a tak, pomyliło mi się z Rubiniusem, który używa LLVM.
K8
  • Rejestracja:ponad 10 lat
  • Ostatnio:około 2 miesiące
  • Lokalizacja:Małopolska
  • Postów:643
0

ja bym nie ruszal tego co jest dobre Intel Core i Win 10 ;-)

to nie znaczy ze nie kibicuje firma ktore chca robic laptopy na ARM i Linux to tez fajna propozycja

chodzi o to ze od personal computer wymaga sie wiecej niz od smartphone

mam na mysli np programy biurowe czy CAD

tu jest szansa

edytowany 1x, ostatnio: krzychu82a
Zobacz pozostały 1 komentarz
K8
stwierdzam to jako uzytkownik
stivens
No to Apple sie chwali ze na M1 laptop im trzyma 17h na baterii np. :) (imho troche naciagane ale zobaczymy)
stivens
Nie mozesz jako uzytkownik stwierdzic ze cos jest dobre tylko dlatego, ze nie widziales alternatywy dla tego
hauleth
Ale przecież na Apple Silicon dalej masz pakiety biurowe (czy to pakiet od Apple czy Office poprzez Rosettę) jak i programy CADowskie (poprzez Roseettę AFAIK). Przy czym sądzę, że zarówno Office jak i AutoCAD powinny szybko wylądować w wersji ARM również, bo zapewne ADK to był dla nich pryszcz.
ŁF
@krzychu82a: "ja bym nie ruszal tego co jest dobre" i tym sposobem zostalibyśmy w głębokim średniowieczu na zawsze
RequiredNickname
  • Rejestracja:prawie 5 lat
  • Ostatnio:około 12 godzin
  • Postów:613
0

Co masz na myśli pisząc "programy biurowe czy CAD"?
Na chwilę obecną ich nie ma (teoretycznie bo pewnie są jakieś namiastki office na ipada) ale to kwestia upowszechnienia się nowej architektury tzn. nie są one zdaje się (na pewno office) uzależnione od specyficznych własności x86.

W0
  • Rejestracja:ponad 12 lat
  • Ostatnio:31 minut
  • Postów:3529
3

@stivens:

A ile tego kodu faktycznie jest platform-dependent?

Prawdopodobnie większość. To nie jest tak, że OS to taki poziom abstrakcji separujący przerwania od funkcji w C. Np. Linux miał całkowicie odmienny model uprawnień od Windowsa więc trzeba było inaczej o to samo się zatroszczyć.

RequiredNickname napisał(a):

Co masz na myśli pisząc "programy biurowe czy CAD"?

Na chwilę obecną ich nie ma (teoretycznie bo pewnie są jakieś namiastki office na ipada) ale to kwestia upowszechnienia się nowej architektury tzn. nie są one zdaje się (na pewno office) uzależnione od specyficznych własności x86.

Takich programów nie ma na iPada bo - uwaga - zostały one zaprojektowane pod laptopa. Cały UI został zaprojektowany pod laptopa, poziom skomplikowania interfejsu wymaga myszki i klawiatury. Naprawdę nie potrafię sobie wyobrazić człowieka pracującego na AutoCADzie na iPadzie. Tak samo nie jestem w stanie sobie wyobrazić człowieka, który pracowałby przy profesjonalnej obróbce zdjęć na telefonie.

Freja Draco
Freja Draco
Niestety w przypadku ogromnej ilości softu tendencja jest taka: uprościmy interfejs i dostosujemy do obsługi paluchem, żeby każdy użytkownik miał takie same "doświadczenia". A że to spowalnia pracę i do bielichy doprowadza dotychczasowych power userów? A kogo te kilka % użytkowników obchodzi.
stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 4 godziny
0

Nie chodzi mi o system operacyjny a o ISA. Wiekszosc softu to pod maszyna wirtualna siedzi. A juz zdecydowana wiekszosc to co najmniej ponad abstrakcjami OS operuje.
Wiec problem to port kompilatorow, biblioteki standardowej i OS a nie calego softu.


λλλ
edytowany 4x, ostatnio: stivens
WeiXiao
  • Rejestracja:około 9 lat
  • Ostatnio:5 minut
  • Postów:5105
0

@stivens:

Wiekszosc softu to pod maszyna wirtualna siedzi.

Idąc dalej - czy od niedawna windows nie siedzi pod vm?

screenshot-20201116011829.png

edytowany 1x, ostatnio: WeiXiao
Ktos
Zawsze tak jest jeżeli masz aktywne Hyper-V.
enedil
  • Rejestracja:ponad 11 lat
  • Ostatnio:9 dni
  • Postów:1027
0

@TurkucPodjadek: Co do renderowania filmów, to akurat dlatego, że na iPadzie istnieje specjalny sprzętowy enkoder/dekoder. Na prockach intela też istnieje, ale preferowany zazwyczaj jest enkoder w oprogramowaniu, gdyż taki sprzętowy nie optymalizuje zbyt dobrze treści, co jest sensowne gdy większość zastosowań to dekodowanie real-time, ale nie jest zbyt przydatne, gdy mamy trochę czasu i chcemy zakodować strumień tak, żeby osiągnąć np. lepszą kompresję. Jeśli zastosować sprzętowy enkoder to nagle te różnice wcale nie są rzędu 10x.

Anna Lisik
iPadzie istnieje specjalny sprzętowy enkoder/dekoder. true
Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:2 minuty
1
sig napisał(a):

Windows na ARM zresztą- powstał, ale jakoś nikt go nie chce (brak softu).

Bo gdyby to była kwestia przekompilowania windowsowego softu pod nową platformę, plus jakaś tam nawet nienajszybsza emulacja x86/x64 to mogłoby to się sprawdzić. Zamiast tego MS wydał Windowsa na ARM owszem, ale tabletowo-kafelkowego z zupełnie innym API (które próbuje forsować również pod x86) i zablokowanym WinAPI tylko dla kodu podpisanego przez Microsoft. "Brak softu" na ich własne życzenie.

edytowany 2x, ostatnio: Azarien
Ktos
Moderator
  • Rejestracja:prawie 23 lata
  • Ostatnio:około 8 godzin
1

Bo gdyby to była kwestia przekompilowania windowsowego softu pod nową platformę, plus jakaś tam nawet nienajszybsza emulacja x86/x64 to mogłoby to się sprawdzić. Zamiast tego MS wydał Windowsa na ARM owszem, ale tabletowo-kafelkowego z zupełnie innym API (które próbuje forsować również pod x86) i zablokowanym WinAPI tylko dla kodu podpisanego przez Microsoft. "Brak softu" na ich własne życzenie.

Żeby nie było, to to "naprawili" - obecnie Windows on ARM to absolutnie zwyczajny Windows 10 z dorzuconą warstwą emulacji x86 (a chyba teraz już również x86-64). Niestety, wygląda na to, że translacja od Apple jest znacznie bardziej wydajna (albo i M1 jest o niebo wydajniejszy od SQ1). Więc teraz, bez tych idiotycznych ograniczeń, to brak softu kompilowanego dla ARM64 to znany już problem - skoro tego sprzętu jest mało (pięć laptopów na krzyż i Surface Pro X) i nikt nie kupuje, to po co soft, a nikt nie kupuje, bo mało jest softu.

SI
  • Rejestracja:prawie 14 lat
  • Ostatnio:8 minut
0

Nawet jak by jakiś sposób konwersji powstał, to jak zmusić producentów softu żeby z niego skorzystali? Zmuszenie ich do działania z prawami użytkownika a nie admina zajęło kilka lat. Nie wiem czy nie najlepszym wyjściem były by procesory "przejściowe" część rdzeni x-86 a część ARM czy coś innego. Były by możliwe coś takiego "technicznie" do zrobienia? Z generacji na generację rosła by ilość "nowych" rdzeni, a spadała ilość x86.

XY
  • Rejestracja:ponad 6 lat
  • Ostatnio:17 dni
  • Postów:257
0

Za bardzo się podniecacie tym ARM. Myślę, że zysk jest głównie dzięki technologii 5 nm TSMC. AMD będzie na niej robił CPU i GPU prawdopodobnie za jakieś pół roku do roku i skończy się "rewolucja". ;)
W uruchamianiu programów z x86 na M1 (Rosetta 2) też pokazują dobre wyniki, ale to ciągle tylko Geekbench, a nie jakieś praktyczne zastosowania.
https://www.macrumors.com/2020/11/15/m1-chip-emulating-x86-benchmark/

edytowany 1x, ostatnio: xy
Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:2 minuty
1
sig napisał(a):

Nie wiem czy nie najlepszym wyjściem były by procesory "przejściowe" część rdzeni x-86 a część ARM czy coś innego. Były by możliwe coś takiego "technicznie" do zrobienia?
Z generacji na generację rosła by ilość "nowych" rdzeni, a spadała ilość x86.

Technicznie byłoby to do zrobienia - tylko musiałaby być taka wola "odchodzimy od x86, przechodzimy stopniowo na ARM", a żeby była taka wola, ARM musiałoby mieć jednoznaczną przewagę (być szybsze, tańsze, politycznie poprawniejsze, ...)

Anna Lisik
  • Rejestracja:około 7 lat
  • Ostatnio:ponad 3 lata
  • Postów:125
0

A ja Wam powiem, że..... nie jestem do końca przekonana do Apple na ARM........ bo nikt nie podał jeszcze argumentu, któryby mnie do końca przekonał
Tak, wiem, są różne marketingowe infografiki, ale łączy je wszystkie jedna rzecz wspólna: z nich nic sensownego nie wynika.

====

Chinka ( @WeiXiao ) parę postów wyżej odleciała zupełnie twierdząc, że

Idąc dalej - czy od niedawna windows nie siedzi pod vm

a jednoczerśnie wklelając infografikę w której jest obramowana część o Linuxie.
Niby coś o Windowsie, Linuxie, a w temacie Apple......
@WeiXiao mogłabyś wytłumaczyć?


Mac lover.
edytowany 6x, ostatnio: Anna Lisik
Zobacz pozostałe 4 komentarze
Aryman1983
Aryman1983
@Anna Lisik: a widzisz tam hypevisora? I dlaczego do @WeiXiao zwracasz się jak do kobiety?
Azarien
ale to nie jest VM emulujące zupełnie inny procesor, tylko takie cienkie VM którego prawie nie ma.
Anna Lisik
@Aryman1983: a co ma do tego HV? A jak mam się do @WeiXiao zwracać skoro to kobieta?
Azarien
@Anna Lisik hypervisor taki jak Hyper-V stawia pod sobą również główny OS. włączenie Hyper-V pod Windowsem powoduje że ten Windows staje się również wirtualką działającą pod nadzorem Hyper-V (mimo że ta wirtualka dostaje mniej lub bardziej bezpośredni dostęp do sprzętu).
Anna Lisik
@Azarien: dzięki za wyjaśnienie
SI
  • Rejestracja:prawie 14 lat
  • Ostatnio:8 minut
1

@Anna Lisik: x86 należy wymienić ponieważ konieczność sprzętowego tłumaczenia go na wewnętrzny kod procesora zajmuj czas i opóźnia rozwój. Takich procesorów zwyczajnie nie robi się od lat, ale ze względu na kompatybilność wsteczną powstały wspomniane sprzętowe tłumacze Aczkolwiek Apple robi to z trochę innych powodów, a mianowicie przy x86 musiał czekać ze swoimi premierami aż intel będzie gotowy, do ARM sam robi czipy więc może wprowadzać na rynek nowe kompy kiedy uzna że już czas,

Azarien
konieczność sprzętowego tłumaczenia go na wewnętrzny kod procesora - to nie konieczność, to szczegół implementacyjny.
K8
  • Rejestracja:ponad 10 lat
  • Ostatnio:około 2 miesiące
  • Lokalizacja:Małopolska
  • Postów:643
0

win10&intel to zawsze bedzie mercedes ale mozna probowac jezdzic fiatem ARM/Linux

zwlaszcza ze roczna licencja AutoCAD to 10 tys zl na tego mercedesa

to ze pod linux jest juz office open/libre a nawet corel czyli inkscape to juz duzo :) czekamy na dobrego CAD pod Linux

Zobacz pozostałe 4 komentarze
K8
pisze z punktu widzenia uzytkownika
ŁF
@krzychu82a: "win10&intel to zawsze bedzie mercedes" - w takim razie Ryzen to Porshe, a M1 to Bugatti... Wypowiadanie takich opini bez słowa uzasadnienia jest słabe, a już szczególnie opinii tak kontrowersyjnych. Sądzisz, że za 5-10 lat nadal "zawsze będzie"?
Anna Lisik
roczna licencja AutoCAD to 10 tys zl na tego mercedesa jeśli kogoś stać na M1 to stać go również na AutoCADa
BraVolt
  • Rejestracja:prawie 6 lat
  • Ostatnio:prawie 4 lata
  • Lokalizacja:Warszawa
  • Postów:2918
0

You can install macOS Big Sur on any of these Mac models
https://support.apple.com/en-us/HT211238

Wszystko w rękach Apple, sprzęt 100% apple, system 100% Apple, lista przetestowanych przez Apple kompatybilnych urządzeń znana od dość dawna.

Efekt? System przygotowany pod obsługę nowego procesora ucegla niektóre starsze macbooki. Te z listy przetestowanych i kompatybilnych.

Komu ucegliło, może oddać maka do autoryzowanego serwisu.
Apple z czasem zapewne problem rozwiąże albo zmniejszy listę kompatybilnych maków.

Szybkie wnioski? Takiej wtopy nie ustrzegł się Apple, to inni producenci softu też będą mieli mniejsze lub większe problemy.

BTW, jak wygląda testowanie sztandarowego produktu w firmie o kapitalizacji ponad 1000 miliardów dolarów, kiedy nie da się systemu nawet zainstalować a po nieudanej instalacji laptop może iść tylko do serwisu? :-o


"Kiedy wiedzieć czy zacząć nauke Springa? bo w czystej Javie to nic ciekawego nie zrobie chyba"
Ein Volk, ein Reich, ein Kwa-Kwa ***** ***
Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:dzień
4

Zamierzam naklepać dużego posta za jakiś czas, ale na razie zarzucę linkami:

AnandTech wysmarował już dwa artykuły ostatnio o chipach Apple'a.

Pierwszy artykuł o Apple A14, czyli czipie smartfonowym: https://www.anandtech.com/show/16226/apple-silicon-m1-a14-deep-dive A14 jest zbudowany w stylu big.LITTLE, tzn ma 2 mocne rdzenie i 4 słabe. Słaby rdzeń jest średnio prawie 4x wolniejszy od dużego, więc klaster 4 małych rdzeni jest tak samo mocny jak jeden duży rdzeń (zakładając idealnie liniowe skalowanie, co rzadko się zdarza). Na stronie https://www.anandtech.com/show/16226/apple-silicon-m1-a14-deep-dive/3 widać porównanie Apple A13 wykonanego w drugiej generacji procesu TSMC 7nm (tzn N7P) z Apple A14 wykonanego w TSMC 5nm (prawdopodobnie N5, a nie N5P). Apple A14 jest 20% - 30% wydajniejszy i pobiera ok 20% mniej prądu. Na pewno nie tłumaczy to gigantycznej przepaści w wydajności na watt z najnowszymi procesorami x86. Dużo wskazuje na to, że Apple M1 oparty jest o te same rdzenie co Apple A14, a różnice sprowadzają się do tego, że np Apple M1 ma 2x więcej dużych rdzeni, nieco wyższe taktowanie turbo (3.2 GHz vs 3 GHz), dużo lepsze chłodzenie (bo smartfony są bardzo słabo chłodzone ogólnie), prawdopodobnie więcej pamięci podręcznej ostatniego poziomu, inny podsystem pamięci (DRAM jest zintegrowany z procesorem w jednym opakowaniu zamiast być wlutowanym w płytę główną), itd.

Drugi artykuł o Mac Mini z chipem Apple M1 i systemem operacyjnym macOS Big Sur: https://www.anandtech.com/show/16252/mac-mini-apple-m1-tested Widać, że wydajność pojedynczego wątku jest kosmiczna jak na takie taktowanie (max turbo = 3.2 GHz), a wydajność wielowątkowa też jest bardzo dobra. Oczywiście na skalowanie ponad 5x względem pojedynczego wątku nie ma co liczyć, bo Apple M1 ma 4 duże rdzenie i 4 małe. Jak już wspomniałem wcześniej te 4 małe rdzenie dodają tyle wydajności do 1 duży, więc w praktyce to nawet sporo mniej niż daje HyperThreading w najnowszych procesorach Intela. Z drugiej strony mały rdzeń pobiera 10x mniej mocy niż duży. Artykuł jest napakowany informacjami. Na https://www.anandtech.com/show/16252/mac-mini-apple-m1-tested/3 widać, że na układzie Apple M1 (bez samodzielnej karty graficznej, tylko integra jest używana) gra Rise of the Tomb Raider (w trybie emulacji / translacji x86) działa 3x szybciej od Intel Ice Lake przy podobnym kontrolerze pamięci! Szkoda, że nie dali Tiger Lake'a czy APU AMD do porównania, ale pewnie i tak Apple M1 by wygrywał w wydajności. Na stronach https://www.anandtech.com/show/16252/mac-mini-apple-m1-tested/4 i https://www.anandtech.com/show/16252/mac-mini-apple-m1-tested/5 mamy wyniki wydajności jednowątkowej i wielowątkowej w benchmarku SPEC. Dla ludzi, którzy twierdzą, że czipy Apple'a mają magiczne akceleratory - w benchmarkach SPEC jest dla przykładu test prędkości kompilacji kodu źródłowego: https://www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html Nawet w tym teście czip Apple M1 wygrywa i to z takimi procesorami jak Ryzen 9 5950X (w trybie jednowątkowym) czy Ryzen 9 4900HS (w trybie wielowątkowym). Na końcu są wykresy pokazujące wpływ emulacji / translacji x86 na ARM: https://www.anandtech.com/show/16252/mac-mini-apple-m1-tested/6 Widać, że wskutek tego traci się między 5% a 50% wydajności, więc historie o translacji x86 -> ARM zwiększającej wydajność można włożyć między bajki.

Aktualizacja:
Dodatkowe testy kompilacji kodu: https://wccftech.com/apple-m1-code-compile-results-as-fast-2019-mac-pro/


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 1x, ostatnio: Wibowit
Zobacz pozostały 1 komentarz
Wibowit
Racja, 16 GiB to trochę mało. Z drugiej strony mam 16 GiB w pracowym laptopie i wystarcza, chociaż na styk. Z trzeciej strony - nie odpalam VMek, dockerów, itp a wtedy już mogłoby RAMu brakować.
BraVolt
Czy w laptopie w którym wystarcza ci 16 GB RAM aż tak bardzo doskwiera mała wydajność procesora intel?
Wibowit
Jak miałem dwurdzeniowego i7 (co za porażka, by marne dwa rdzenie nazywać i7) to wydajność była zarzynana przez korpo krapiszcza instalowane domyślnie. Teraz z quad core jest OK, bo korpo krap nie dojeżdża wszystkich rdzeni jednocześnie. Jednak jest duży problem - szum wiatraków. Teraz jest gorzej niż kiedyś. Kiedyś popularne były grube laptopy, gdzie wiatraki i radiatory były większe, więc nie musiały się tak wysilać i szumieć. Teraz w tych cienkich lapkach wentyle mocniej doskwierają. A ten MackBook Air z czipem Apple M1 w ogóle nie ma wiatraka - brzmi cudownie :)
Korges
@Wibowit: Dokładnie, też się zapatrywałem na zakup. Poczekam na wersję pro pro z 4 portami i 32gb ramu.
hauleth
Ja właśnie kupiłem 13" z 32GB RAM, a z wymianą zaczekam pewnie do 2022 przynajmniej by zobaczyć jak się rozwinie.
Korges
  • Rejestracja:prawie 5 lat
  • Ostatnio:około 7 godzin
  • Postów:549
0


Porównanie do najmocniejszego MBP 13" z intelem oraz DELL XPS z intelem 11'th gen.
Najciekawsze jak dla mnie 7:25. Czegoś takiego właśnie oczekiwałem. Wysokiej kultury pracy. Dla niewtajemniczonych model z intelem ma dwa fany, a z ARM tylko jeden. Mimo to przewaga i tak jest po stronie ARM.

edytowany 3x, ostatnio: Korges
BraVolt
  • Rejestracja:prawie 6 lat
  • Ostatnio:prawie 4 lata
  • Lokalizacja:Warszawa
  • Postów:2918
0

4:50 i trochę dalej
Przeglądarki
Natywne Apple Safari wymiata na nowym procesorze
Stary, niezmieniony Chrome jest znacznie szybszy na intelu.

Będzie powszechne przystosowanie softu do nowego procesora, to R.I.P. intel.
Nie będzie, to para pójdzie w gwizdek.


"Kiedy wiedzieć czy zacząć nauke Springa? bo w czystej Javie to nic ciekawego nie zrobie chyba"
Ein Volk, ein Reich, ein Kwa-Kwa ***** ***
Wibowit
Będzie powszechne przystosowanie softu do nowego procesora, to R.I.P. intel. Nie będzie, to para pójdzie w gwizdek. - musi być, bo Rosetta jest rozwiązaniem tymczasowym. W ciągu kilku lat Apple wytnie obsługę aplikacji x86, tak jak niedawno wycięło obsługę aplikacji 32-bitowych.
Korges
Troche z d**y te testy. Ten model 'pro' po prawej stronie to w najlepszym wypadku model z 2017 roku. Konkretnie ten https://everymac.com/systems/apple/macbook_pro/specs/macbook-pro-core-i7-2.5-13-mid-2017-retina-display-no-touch-bar-specs.html lub wersja z i5. Po czym to poznaje? To są ostatnie modele bez pasku touch bar. Zresztą sam mam taki z i7 i safari działa jak strzała. Więc albo koleś ma coś nie tak z komputerem albo ma jeszcze starszy model. Co by nie mówić to dalej porównywanie brand new z conajmniej 3 letnim procesorem (do tego używanym)
BraVolt
@Korges: Tym bardziej dużo szybsze działanie softu pisanego pod intela robi wrażenie. Nawet na starym maku to co natywnie intelowe jest szybsze niż gdyby puszczać na nowym maku.
stivens
Gosc przeciez mowi chyba ze to 2017
Korges
@stivens: ta, nie oglądałem od początku tylko od tego 4:50.
XY
  • Rejestracja:ponad 6 lat
  • Ostatnio:17 dni
  • Postów:257
0
Wibowit napisał(a):

Apple M1 wygrywa i to z takimi procesorami jak [...] Ryzen 9 4900HS (w trybie wielowątkowym).

Widać tam, że też Ryzen 7 4800U (inna sprawa, że ciężko chyba kupić coś z tym dokładnie procesorem) też za mocno od M1 nie odbiega. Tylko zgaduję, że te procesory Ryzen U i HS (a nie ten desktopowy) miały wzięte wyniki z laptopów, a M1 z Maca Mini. Mac Mini to klocek o grubości 3,6 cm, czyli 1,5 do 2,5 raza grubszy od typowego współczesnego laptopa, w którym na grubość składają się też ekran i w sporej części klawiatura, więc to trochę nierówna walka pod względem chłodzenia.
W wynikach Cinebench R23 Macbooków M1 (czyli laptopów, z wiatraczkiem i bez) już tak różowo wydajność wielowątkowa nie wygląda.

Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:dzień
1

W wynikach Cinebench R23 Macbooków M1 (czyli laptopów, z wiatraczkiem i bez) już tak różowo wydajność wielowątkowa nie wygląda.

Apple M1 to procesor w układzie a'la big.LITTLE. Ma 4 mocne rdzenie i 4 słabe rdzenie - w sumie 8 wątków, bo nie ma SMT. Ryzen 7 4800U ma 8 mocnych rdzeni, z których każdy ma włączone SMT (czyli wykonywanie dwóch wątków naraz). Patrz tutaj https://www.anandtech.com/show/16252/mac-mini-apple-m1-tested/5
119365.png
Apple M1 z obciążonymi 4 wątkami jest szybsze (w podanym benchmarku) od Tiger Lake z obciążonymi wszystkimi 8 wątkami. 4 słabe rdzenie (spośród wszystkich ośmiu) z Apple M1 niewiele wpływają na wydajność całego układu.

PS (podałem też wcześniej, ale pewnie niewielu zauważyło):
Dodatkowe testy kompilacji kodu: https://wccftech.com/apple-m1-code-compile-results-as-fast-2019-mac-pro/

PPS:
Intel planuje własną wersję big.LITTLE: https://www.anandtech.com/show/15979/intel-alder-lake-confirmed-x86-hybrid-with-golden-cove-and-gracemont-for-2021 8 dużych rdzeni (z SMT) + 8 małych rdzeni (chyba bez SMT). Będziecie to porównywać do 16-rdzeniowców z samymi dużymi rdzeniami?


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 2x, ostatnio: Wibowit
Zobacz pozostałe 7 komentarzy
Wibowit
https://www.techpowerup.com/review/amd-ryzen-9-5950x/7.html https://tpucdn.com/review/amd-ryzen-9-5950x/images/cinebench-multi.png Na leciwej już architekturze Intel Skylake SMT (HyperThreading) daje 29% dodatkowej wydajności w CineBench R20 jeśli podzielimy wynik Core i9-9900K przez wynik Core i7-9700K (tyle samo rdzeni, taktowanie bardzo zbliżone, różnią się głównie obecnością HT). Na Intel Ice Lake zysk powinien być jeszcze większy z włączenia HT.
Wibowit
Skoro nie lubisz Mac Mini z czipem M1 bo ma niby zbyt dobre chłodzenie to jest test z 13-calowym MacBookiem Pro z czipem Apple M1: https://www.techpowerup.com/274764/apple-m1-beats-intel-willow-cove-in-cinebench-r23-single-core-test Podczas testu czip Apple M1 podobno pobiera zaledwie 10W: https://www.techpowerup.com/forums/posts/4394931 Wyniki pokrywają się z tymi na https://www.cpu-monkey.com/en/cpu_benchmark-cinebench_r23_single_core-15 i https://www.cpu-monkey.com/en/cpu_benchmark-cinebench_r23_multi_core-16 Wydajność mniej więcej na poziomie najmocniejszego Tiger Lake.
Wibowit
Aaa, to 10W jest MacBook Air. Ale w sumie to niewiele zmienia, bo MacBook Air ma ledwo kilka % niższe wyniki niż MacBook Pro czy Mac Mini (wszystkie z czipem Apple M1).
Wibowit
Poza tym renderowanie to raczej wykorzystuje SIMDa mocno (tak na moje oko). Apple M1 chyba nadal obsługuje tylko ARM NEON, czyli 128-bitowy SIMD, czyli coś na poziomie starego SSE od Intela. Intel od dawna ma 256-bitowe AVXy (w wersji 1 i 2) zarówno w Intel Core jak i Intel Xeon, a AVX-512 jest nie tylko w 14nm Intel Xeon, ale też w 10nm Intel Core. Intel ma sporo szersze jednostki wektorowe niż typowe ARMy. Ale ARM SVE i SVE2 już w drodze pewnie, więc za jakiś czas będzie duży skok we wszelakich ARMach (w Cortexach pewnie najpóźniej).
Anna Lisik
@xy: ale serio? wiesz, do kogo należy CineBench? No więc właśnie.......
Satanistyczny Awatar
  • Rejestracja:ponad 6 lat
  • Ostatnio:dzień
  • Postów:689
0

Ciekawe czy skończy się to z czasem upychaniem w te Applowe ARMy coraz więcej rejestrów i cache oraz dodawaniem rozszerzeń do wszelkiej maści obliczeń wektorowych i innych wynalazków. Czyli będzie to ARM nie tak bardzo już RISC (w sumie i tak już średnio jest z Thumbami, NEON itd) i nie tak już bardzo energooszczędny.

edytowany 1x, ostatnio: Satanistyczny Awatar
hauleth
Moderator
  • Rejestracja:około 17 lat
  • Ostatnio:6 dni
1
Satanistyczny Awatar napisał(a):

Czyli będzie to ARM nie tak bardzo już RISC (w sumie i tak już średnio jest z Thumbami, NEON itd

Ale duża ilość rejestrów to jedna z głównych cech RISC… A SIMD mam wrażenie to również nie przeczy idei RISC, już bardziej AES-NI, ale jakby się uprzeć, to też da się to uzasadnić. RISC jak na moje nie oznacza, że jest mniej instrukcji (wbrew nazwie) a że instrukcje robią mniej i trzeba złożyć ich więcej by uzyskać efekt jaki chcemy.

Dodatkowo trzeba pamiętać, że ARM ma wiele aliasów, przykładowo add w ARM to instrukcja z 4 operandami - add with shift:

Kopiuj
ADD <target>, <a>, <b>, <shift>

I ten operand jest aliasowany jako MOV (odpowiednik ADD <target>, <a>, 0, 0), SHL ze stałym argumentem (odpowiednik ADD <target>, <a>, 0, <shift>), etc. Więc w ARMach często jedna instrukcja może być używana przez kilka różnych operacji.


Wibowit
RISC jak na moje nie oznacza, że jest mniej instrukcji (wbrew nazwie) a że instrukcje robią mniej i trzeba złożyć ich więcej by uzyskać efekt jaki chcemy - właśnie nie wbrew nazwie tylko zgodnie z nazwą. RISC to (((reduced instruction) set) architecture) czyli architecture with a set of reduced instructions.
Wibowit
chociaż z drugiej strony każdy sobie interpretuje jak chce. samo x86 na początku miało mało instrukcji.
Wibowit
poczytałem wiki i teraz jestem w kropce :P z pierwszego zdania wychodzi ((reduced (instruction set)) architecture). tak czy siak, RISC samo w sobie to mało precyzyjne pojęcie.
hauleth
No (((reduced instruction) set) architecture) jest bliższe mojemu sercu jak to tak opisać. Przy czym tak jak powiedziałem, to R wcale nie oznacza, że jak piszemy kod assemblera to nagle jest mniej mnemonik, tylko, że jedna instrukcja może odpowiadać różnym mnemonikom. Co ciekawe, to również oznacza, że kompilator nie musi robić niektórych optymalizacji, przykładowo b = a + 0 nie musi być zamieniane przez kompilator na b = a, bo z punktu widzenia architektury nie ma znaczenia.
vpiotr
@Wibowit: nie zgodzę się, x86 od początku było rozbudowane, coś krótko na temat: https://cs.stanford.edu/people/eroberts/courses/soco/projects/risc/risccisc/
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)