Sháním vadné SSD k vývoji lepšího

Miramel

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #30 kdy: 31. 12. 2014, 17:56:27 »
Omlouvám se za gramatiku, jsem už kapku nalitej  ;D


RDa

  • *****
  • 3 081
    • Zobrazit profil
    • E-mail
Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #31 kdy: 31. 12. 2014, 18:48:17 »
V PC to jiz mame - ale to je dobre jen tak na vyvoj, prakticky to je nepouzitelny - neda se to vzit sebou a jste zavisly na zasuvce. Ne ze by to neslo resit, ale je to pitomost pouzivat tak jak to je.

ad spotreba: XP941 ma neco pod 6W pro 950MB/s zapis, takze to rozhodne lze realizovat soucasnou (resp. budouci technologii) kdyz se z toho vypusti ty nepotrebne rozhrani. Toto reseni pokryva rychlost a je za prijatelnou cenu - az na tu moznost obnovy dat.

Cileni - nejjednodusej receno se jedna se o konkurenci na RED s tim ze feature-set se da uzivatelsky volit pouzitim vhodnych modulu (snimac, konektivita, uloziste, zpracovani dat), umoznime nekomprimovany zaznam (tj. vyssi kvalita, viz arri/arri65) a modularita zaruci nizsi "startovni" cenu zakladniho setu.

Puvodni myslenka byla to sestavit z consumer komponent (nejnizsi cena), ale jak prichazi profesionalnejsi nasazeni a pozadavky, migruje se to na vlastni reseni. Jako vyvojovy/referencni/testovaci design se porad pouziva consumer a nehledal bych jine reseni, kdyby fungoval jak chceme.

Miramel

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #32 kdy: 31. 12. 2014, 20:59:18 »
V některých firmách, obvykle úspěšných, to funguje tak, že je ZAKÁZÁNO vyvíjet cokoliv, co by odsálo vývojové zdroje.
Chcete dělat 4K kameru na natáčení porna nebo superrychlé úložiště?
Nevím, jak velký kapitál za vámi je, ale mám pocit, že obojí nedáte.

A pořád se mi líbí ten Thunderbolt, existují super notebooky s Thunderboltem.
Třeba Apple MacBook Pro 15.4" Retina - Core i7-4870HQ, 16GB RAM, 512GB SSD s Retinou!
Těch 16GB ram je na nějakých osm vteřin nekomprimovaného záznamu, delší takovou scénu nemá smysl vytvářet.
Poděkoval bych Bla za jeho nápad, udělal nějaké demo vašeho udělátka a napsal do Intelu, aby vám pomohli.
Základní verze může být jen kamera připojená přes Thunderbolt a lepší verze třeba vaše udělátko ve spolupráci s Intelem procesované skrz Larrabee. Skoro si myslím, že ta firma má úplně všechno, co potřebujete. Navíc má Intel přímo nějaký program pro podporu Startupů.

Miramel

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #33 kdy: 31. 12. 2014, 21:07:25 »
16GB Ram je na 8 vteřin nekomprimovaného záznamu při ~200 snímcích za vteřinu, což se puštěné normální rychlostí protáhne na minutu záznamu. Bullet time nebo ve vašem případě možná Squirt time  ;D ;D se tak protáhne na poměrně dlouhou až nudnou pasáž.
Rozšířením o dalších 16GB ram z toho máte 16 vteřin nebo taky dvě minuty záznamu.

RDa

  • *****
  • 3 081
    • Zobrazit profil
    • E-mail
Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #34 kdy: 31. 12. 2014, 21:47:45 »
Poděkoval bych Bla za jeho nápad, udělal nějaké demo vašeho udělátka a napsal do Intelu, aby vám pomohli.
Základní verze může být jen kamera připojená přes Thunderbolt a lepší verze třeba vaše udělátko ve spolupráci s Intelem procesované skrz Larrabee. Skoro si myslím, že ta firma má úplně všechno, co potřebujete. Navíc má Intel přímo nějaký program pro podporu Startupů.

Dekovat? Vzdyt reseni SATA pole pres PCH jiz ted mame (na 24fps/4k/16bit) a jak jsem psal, je tam omezena sirka pasma at si vezmete jakoukoliv desku. Pouziti raid karet jen prodluzuje slepou vetev vyuzivani standardniho PC desktopu, to nikdy k mobilite nepomuze. Ted procesujeme skrze iGPU na i5. Hodil by se model s eDRAM (ten ma 2x vetsi graficky vykon), ale typicky Intelovsky - se ten nachazi jen v ultraboocich, kde neni zadne tlustejsi PCIe k dispozici (max x1 v express-card slotu). V embedded ani socketovem provedeni neni.

TB je jen zabaleny a osekany PCIe (realne 8Gbps resp 16Gbps x 80% a minus displeje pokud tam jsou, TB1 resp. TB2). Vy mate velice zkreslene predstavy o Intelu - mit veci muzou, ale kdyz nemaji zajem to propagovat, resp. ani nemuzou protoze vsechno kolem TB ridi a tahne Apple samotny (Intel jen vyrabi par obvodu).

Citace: Miramel
16GB Ram je na 8 vteřin nekomprimovaného záznamu při ~200 snímcích za vteřinu, což se puštěné normální rychlostí protáhne na minutu záznamu.

Pro 4K bude brzo standardni frame rate 120fps (viz EBU). Takze vasich 16GB umozni nahrat uzasnych 13 vterin. A co pak? 5 minut pauza nez to ulozite? Cilem je udelat zarizeni ktere nema tyto umele limity, jen proto ze se nam nechtelo na tom pracovat.

Architekturu uz mame navrzenou a posledni dva roky vyvoje a testovani potvrzuji ze smer a technologie ktere jsme zvolili jsou ty spravne. Tyto zkusenosti Vy ani Bla evidentne nemate...


TomTom

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #35 kdy: 31. 12. 2014, 22:03:03 »
Tyto zkusenosti Vy ani Bla evidentne nemate...
No, nemají (a kromě zkušeností nemají ani dostatečné teoretické znalosti) - ale kecat budou, to si nemůžou nechat ujít...

Janek

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #36 kdy: 01. 01. 2015, 00:54:35 »
A nechcete to natočit na film a a pak to oskenovat? film má prý velké rozlišení

Jenda

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #37 kdy: 01. 01. 2015, 08:29:11 »
Navic pri pristupu ke kazdemu cipu muzeme ridit co kam pujde - rozkladat radky nebo snimky tak, aby pri ztrate treba pulky pole slo obnovit obraz alespon s polovicnim rozlisenim, nebo polovicnim fps pri HFR snimani.
Pak nechápu, proč potřebuješ reverzovat existující disk -- normální desktopové SSD určitě neumí rozkládat obraz na řádky :). Prostě nakup flash čipy, vraz před ně rychlé FPGAčko a naprogramuj si tam to rozložení na řádky. To je podle mě nejdostupnější, energeticky výhodné, relativně jednoduché a jediné prakticky proveditelné řešení.

Koukni, jestli už není nějaký hotový FPGA devkit na PCIe x8 nebo x16 (x1 ti asi nestačí). Dokonce říkáš, že v kameře ti to po PCIe x8 leze - takže to stačí „jenom“ prodrátovat, ne?

RDa

  • *****
  • 3 081
    • Zobrazit profil
    • E-mail
Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #38 kdy: 01. 01. 2015, 11:07:29 »
Tak ucelem meho postu bylo sehnat ekvivalentni hromadu pouzitych flash cipu (cca 320 ks) na sestaveni prorotypu noveho SSD - nez nakoupime ty drahe obvody ktere maji osm cipu v sobe. Nase zdroje nejsou neomezene a rad bych pak uloziste / FTL uvolnil jako opensource.

LKG

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #39 kdy: 01. 01. 2015, 13:32:33 »
Tybrďo fascinuje mě, kolik mudrlantů ani nedokáže pochopit, že kamera, pravděpodobně postavená na FPGA, s propojením modulů pomocí PCI Express rozhraní nad obecnými GTX/GTP/GTH/whatever SERDES transceivery má úplně jiné možnosti postavení SSD úložiště, než to co nabízí PC. Je jasné, že to co je na trhu, bohužel naprosto nepostihuje jejich potřeby. Oni se snaží našlapat RYCHLÉ úložiště přímo do kamery - a mají tam k tomu rozhraní. Plky o tom, kolik propustí DMI/QPI/SATA/SAS/whatever jsou naprosto liché. Pravděpodobně hodí další modul s FPGA na PCIe x8 2.0 linku, a ten bude mít na sobě přilepené FLASH paměti. Problém ale je potom naprogramovat takový kontrolér uvnitř FPGA, který se postará nejen o rychlost, ale i o korektnost těch uložených dat. Pro onu udávanou rychlost na 240fps to bude poměrně výzva, a to zejména z hlediska počtu čipů a relativně pomalého zápisu. Při taktu vnitřní logiky FPGA 125 MHz, což je takt AXI4 PCI Express bloku při 128 bitové šířce dat (což ale třeba Xilinx při Gen2 nepodporuje, a já fakt nevím jaké máte řešení), bych data rozhodil na ještě širší paralelní sběrnici, nad kterou už by se dala realizovat detekce/oprava chyb i s tím bitratem, co leze ze snímače. Bude to takový malý závod počet taktů/ECC vs. počet bitů sběrnice vs. počet čipů na požadovanou kapacitu. Taky asi bude poněkud vyšší počet takových úložných desek, aby to mělo alespoň nějakou kapacitu.

Nabízí se samořejmě použít PCIe SSD disky hotové, ale to by cenou šlo někam úplně jinam. PCIe budete mít budičema vyvedené do kabelu ven z kamery, tak by to pak bylo o té bedýnce s SSD. Chápu že cílem je něco jako PCIe disk, který bude garantovat integritu dat - ale nevím jestli vám pomůže rešerše stávajících disků - ty jsou dělané na trochu jiné účely (random zápis, wear-leveling, atd.). To co vy potřebujete, je před nahráváním hodit erase na všechny stránky, a pak co nejrychleji pouze zapisovat. Není potřeba řešit zároveň čtení, nebo opotřebení buňek. Dalo by se to řešit vůbec nejlíp tak, že by se data proložila napříč velkým blokem, a návazný ECC by se zapsal spolu s daty, a případná detekce/oprava by se řešila až při čtení dat z kamery do návazných zařízení. Tak by to snížilo složitost řadiče, který by pouze musel být schopen data s ECC zapsat - to bývá výpočetně mnohem jednodušší úloha než dekódování. Vlastní relativně složité dekódování a detekci/opravu bych nechal na serveru, který by data z kamery bral a strkal na nějaké enterprise úložiště. Tam už by to eventuelně ani nemuselo splňovat plnou rychlost potřebnou pro zápis.

Nějaké vadné SSD by byly, ale bohužel se každé důkladně před vyřazením provrtává....

Co by také bylo určitým řešením, které by mohlo daný SSD boxík zlevnit, je použít normálně dostupně levné SSD disky s velkou kapacitou, a udělat pouze zakázkový PCIe / SATA3 nebo SAS2 řadič. Obávám se ale, že na rychlost ASIC řešení např. od LSI byste se s tímhle nedostali.

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #40 kdy: 01. 01. 2015, 14:12:28 »
Tak mě napadá, RDa, zkoušeli jste konktaktovat nějaké prodejce/servisy? Kdybyste jim hezky pověděli váš příběh, možná by byli ochotní vám nějaké ty vyreklamované vadné SSD dát.

Kontakt na jednoho menšího prodejce a servis hw bych měl, budu s nima mluvit někdy v průběhu ledna, února, tak se můžu zeptat. Ale je to menší prodejce, tak nevím, jakej u nich obrat tohodle zboží je...

RDa

  • *****
  • 3 081
    • Zobrazit profil
    • E-mail
Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #41 kdy: 01. 01. 2015, 14:15:14 »
Konečně někdo kdo tomu rozumí - nepoužíváme dodávaný AXI bridge, který je právě omezený na x4 gen2 jak píšete, ale máme vlastní PCIe jádro (128b x 250MHz) a DMA řadič.

Co jsem z těch dosavadních flash obvodů zjistil je, že pravděpodobnost souvislých chyb v rámci stránky je extrémně nízká, resp. chyby nejsou na stejných místech když si proložíme mapy chyb více obvodů (zde pak samozřejmě větším počtem obvodů pravděpodobnost zhody narůstá).

Za předpokladu, že tomu tak bude nadále, což se dá zjistit experimentálně, analýzou dostatečného počtu hodně použitých pamětí, lze nasadit algoritmus, který bude vracet správná data (např. tj minoritu z výpočtů s vyloučením obvodu*, lze to provozovat paralelně a proudově v dlouhé pipeline, bez nutnosti práce nad bloky).

*) představte si RAID5, kde jeden z disků záměrně obsahuje chybu - jedině při vyloučení chybného disku dostaneme správná data (1x) a v ostatních N případech (pro N+1 disků v poli) jsou data stejná, ale nesprávná.

@LKG: a nemohl by jsi zjistit, zda to nejdě smluvně ošetřit, nebo vrtat jen řadič? O jaký sektor se jedná?

@Mirek: zkusím servisy, ale řekl bych že to musí postoupit dodavateli, zjistím

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #42 kdy: 01. 01. 2015, 14:47:20 »
@Mirek: zkusím servisy, ale řekl bych že to musí postoupit dodavateli, zjistím
Kdyžtak pak dej vědět (nejlíp asi sem), co jsi zjistil. Vzpomněl jsem si ještě na jednoho prodejce hw, kterýho bych se taky mohl zeptat, ale ten je hodně malý, tam asi nic nebude.

Potom bych ještě doporučil zkusit kontaktovat http://www.device.cz/, pana Sotoláře - je s ním docela rozumná domluva. Ta firma dělá likvidace podnikového hw ve velkém a co je použitelné, prodává. Nevím, kolik ssd se u nich objeví, ale za pokus by to stálo. Každopádně by to ale imho chtělo udělat nějakou hezkou, jednoduchou propagační stránku, kde byste polopaticky řekli, k čemu to chcete a proč to chcete zadarmo. Něco jako "jsme malý český startup s jedinečným výrobkem ... prosíme, podpořte mladé České podnikatele" ;) k tomu pár fotek, aby bylo jasný, že už něco máte a víte, co děláte.

Třeba by se tady našlo zepár lidí, kteří by byli ochotní se domluvit na akci, že by si link na tu stránku vytiskli a při návštěvě nějakýho místního hw shopu by jim to s prosbou o podporu předali :)

LKG

Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #43 kdy: 01. 01. 2015, 15:14:26 »
@RDa: Bohužel, company policy. Disky se rozebírají, a provrtává každý flash čip. Obejít to nejde. Valná většina jsou Intel SSD enterprise-class disky různých řad a dat výroby. Rád bych pomohl, ale tohle neobejdu. Jak už někdo radil - mohlo by pomoci obrátit se e-mailem na servisy PC techniky nebo na větší dodavatele (IBM, HP atd.) oficiální žádostí.

Každopádně vám ale fandím, protože když jsem četl o českém projektu profesionální kamery 4k poprvé, a viděl provedení a domyslel si technologii, tak mě vyloženě zahřálo u srdce, že jde někdo do takového technologicky zajímavého projektu.

S těma FLASH, ono se o tom hodně mluví jak je to bůhvíjak nespolehlivé, a že to nic nevydrží. Bullshit. Praxe ukazuje, že FLASH si toho nechá líbit spoustu, a to obecné povědomí je způsobené hlavně různými USB klíčenkami a entry-level SSD s odpadem při výrobě místo pamětí. Pro vaše použití jako úložiště nepotřebující náhodný přístup bych opravdu nevymýšlel bůhvíjaké zabezpečení. Můžete bezpečně kontrolovat, kolik toho která stránka té které paměti zapsala. Pokud si to nebudete komplikovat souborovým systémem, ale bude zapisovat lineárně, tak stačí zajistit, aby bylo možné zjistit a opravit chybu. Při přiblížení ke garantovanému počtu zápisů FLASH pak můžete začít vypisovat doporučení k výměně úložiště. Jakýkoliv RAID nezajistí integritu - musí zde být mechanismus, který dovede určit že ty čtená data jsou vadná, a eventuelně dokázat chybu opravit (než RAID, vždycky bude lepší i nejobyčejnější Hammingův kód). Minorita podle mě není vhodná, protože je stále potřeba určit, jestli ta minorita je ta "správná". Tady to je místo opravdu pro samoopravné kódy, a vzhledem k pravděpodobnosti výskytu chyby budou stačit i ty jednodušší. A jak jsem načrtnul už v minulém příspěvku, kódování samotné je velmi rychlé, a stačí k němu minimum logiky. Lze tedy realizovat velmi rychlý zápis, což je to, co potřebujete. Kdybych použil nějaký kód, který bude mít např. 1024k data + 128b ECC (v praxi blbost), tak kdybych chtěl rychlý preview, co že to mám na kameře zaznamenané, tak můžu číst jenom ty data, a číst jenom tu datovou část. Když to budu chtít bezchybně přenést a zkontrolovat a opravit pro další střih, tak už to budu číst i s tou ECC částí a ty chybná data kdyžtak opravím.

Nemyslím si ale, že se příliš s chybami potkáte. Jak bylo napsáno v příspěvku, pravděpodobnost souvislých chyb je minimální. Stejně tak v situaci, kdy má flash zapsaná data a stránka se poškodí, tato jde číst, ale nejde již smazat a zapsat. Výhodou pořád je, že jde o sekvenční zápis. A je možné zajistit před započetím nahrávání, že všechny sektory šly vymazat. Pokud budete brát za bernou minci analýzu vyjetých SSD, tak tam není vůbec garance toho, že byly správně používány. Ještě stále spousta filesystémů ignoruje TRIM, nebo je nesprávně použit (misalignment stránek s partitionami). Stejně tak wear-levelling algoritmy se liší a nedělám si iluze že to bude bůhvíjak promyšlené a efektivní. Pokud byste chtěli analýzu, co udělá s FLASH vaše kamerová srandička, tak vezmětě nějakou velkou NAND flash, připravtě nějaký soubor s náhodnými daty, a vždy tu pamě't celou korektně vymažte, lineárně zapište připravený obsah, načtěte ho zpátky a verifikujte. Opakujte do zblbnutí. To se přiblíží praxi mnohem blíž než analýza vyjetého SSD, u kterého ani nevíte, jak se zapisovalo, protože neznáte algoritmus. Můj odhad ale je, že ta flashka bude dobrá, a pak se najednou odporoučí celá.

Jestli se můžu zeptat - co přesně používáte za FPGA v různých částech kamery ? Jestli to teda není součástí trade secret  :)

RDa

  • *****
  • 3 081
    • Zobrazit profil
    • E-mail
Re:Sháním vadné SSD k vývoji lepšího
« Odpověď #44 kdy: 01. 01. 2015, 16:12:35 »
@LKG: V současné hlavě kde jsou 3G SDI výstupy je S6, pro nové návrhy pak volím A7 resp. K7 podle potřeby x4/x8 PCIe. Kromě toho experimentujeme s použitými deskami, kde jsou V5/V6.

Nápad na preview bez ECC je zajímavý. A podobně by se dalo ušetřit redukcí na 8bit (na náhled opravdu nepotřebujete 12-16 bitů) resp. nižší rozlišení (line skipping) - když se budou data patričně distribuovat mezi obvody, je možné nechat většinu flashek spát.

Ohledně opravy chyb - ve video aplikaci by se navíc chybějící data dali interpolovat (podobně jak se dělá oprava dead/hot pixel) - s tím že vada ve flash se objeví jen v jednom snímku, takže lze jako referenci použít i okolní snímky (temporal noise reduction).

Ale raději bych byl za spolehlivé úložiště (už z podstaty že tam budou i metadata a časem třeba zvuk).