Nasz znajomy mieszka w domku nad Belmont Channel koło San Francisco Bay, z widokiem na okrągłe niebieskie budynki znanej korporacji informatycznej. Z przymusu pandemii siedząc w domu, większość czasu spędzał nad wodą na swoim decku z grillem i piwem, patrząc i rozmawiając na odległość z innymi wokoło, również siedzącymi na swoich deckach – no niech będzie deskach. Większość z nich pracowała teraz zdalnie w okolicznych korporacjach.

Kiedyś, późno wieczorem, wywiązała się gorąca dyskusja pomiędzy kilkoma nerdami, przy czym piwa podgrzewały i tak już ciepłą atmosferę. Jeden z dyskutantów perorował, że jego firma już niedługo wypuści na rynek taki produkt, że innym klawiatury zwiotczeją, ale pozostali dyskutanci pozostawali sceptyczni. Tym bardziej próbował ich przekonać, ale nagle chyba się zorientował, że nieco za bardzo odsłonił tajemnice firmy i zamilkł, po czym ostentacyjnie ziewnął i sobie poszedł.

Ten mój znajomy, mimowolny świadek rozmowy, próbował od reszty dyskutantów czegoś się bliżej dowiedzieć, ale oni utrzymywali, że nie ma o czym gadać, bo to chyba fake news – przecież procesory przetwarzające w pamięci RAM (Processing In Memory) znajdującej się w tym samym czipie już od dawna istnieją. A tamten twierdził, że oni taki zupełnie nowatorski komputer z aktywną pamięcią budują i będzie on lepszy od niestabilnego mechanizmu kwantowego. Znajomy – nie informatyk – nie bardzo wiedział, o co mógłby jeszcze zapytać. Niemniej musiał wyglądać na nieprzekonanego, bo reszta towarzystwa rzuciła mu zmięty w kulkę kawałek papieru i poszła spać.

Znajomy rozprostował, wygładził i obejrzał tę kartkę – była z jakiegoś The Internal Tech Journal (że też jeszcze firmy wydają takie papierowe czasopisma…). Czytając ją, dalej niewiele rozumiał, więc postanowił ją zeskanować i przesłać do mnie mejlem. Był to fragment tekstu technicznego opisu, jakiś rysunek, urwana nazwa firmy i data 2020/01/04.

Z opisu wynikało, że firma opracowała organizację czipa pamięci operacyjnej z jednostkami liczącymi, nazwanego tamże Associative Database Memory Processor (ADMP). Z uproszczonego schematu można było wywnioskować, że pamięć operacyjna jest tablicą (1 MB*1 MB) procesorów, z których każdy ma bajtowy rejestr, na którym mogą być wykonywane operacje arytmetryczno-logiczne oraz przesunięcia zawartości do sąsiednich rejestrów. Pomiędzy operacjami rejestr ten pełni funkcję bajtu pamięci. Powiązania pomiędzy procesorami mogą być konfigurowane poprzez rejestry maskowania i wyboru. Wyróżniony jest też rejestr argumentu oraz wyniku. W jednym cyklu wybrany podzbiór procesorów może równocześnie wykonać tę samą operację, każdy na swoim rejestrze wstawiając wynik do rejestru wyniku.

Z dalszego opisu wynikało, że do tego ADMP możliwe jest wprowadzanie danych alfanumerycznych o strukturze odwzorowania tabel typu arkuszy kalkulacyjnych oraz relacyjnych baz danych. Również można w ADMP wyszukiwać zadane frazy w dowolnie długich sekwencjach znakowych. Być może się to nada w kryptografii do szyfrowania i deszyfracji. Ciekawe, o ile będą mogły być szybsze wyszukiwania danych w zbiorach baz danych przy wykorzystaniu ADMP?

Po zrozumieniu zasad działania tego rozwiązania przeszły mnie ciarki po plecach. Ujrzałem bowiem komputer o strukturze odmiennej od klasycznej koncepcji Von Neumanna, w którym pamięć operacyjna jest elementem aktywnym. Co prawda jeszcze musi istnieć klasyczny procesor do sterowania tym ADMP, obliczeń oraz operacji we/wy. Od lat czekałem na takie rozwiązanie i dziwiłem się, że go nawet nie próbowano opracować. A było to też marzenie mojej żony informatyczki, projektującej onegdaj algorytmy stronicowania pamięci wirtualnych, gdzie byłaby przydatna funkcja przepytywania pamięci w jednym cyklu.

Znajomy dopytywał się, na czym polega ta innowacyjność. Wytłumaczyłem mu po żołniersku: na placu apelowym jest ustawiona kompania wojska. Po wykonaniu komendy „kolejno odlicz” porucznik wydaje rozkaz: „pierwszy do mnie”. Żołnierz wybiega z szeregu i stając przez porucznikiem salutuje. Porucznik odczytuje z munduru nazwisko: „Szeregowy Nowak, czy gracie na jakimś instrumencie?”. „Tak jest”. „To odmaszeruj na bok. Następny z szeregu!”. I tak po 60 wezwaniach, porucznik zgromadził kilku żołnierzy muzyków. Można to też wykonać prościej. Bez liczenia porucznik wydaje rozkaz: „Szeregowi grający na jakimś instrumencie, do mnie!”. Po chwili stoi przed nim kilku żołnierzy muzyków. W tym przypadku każdy z żołnierzy musiał sam przetworzyć rozkaz i zdecydować czy ma podbiec do porucznika.

Pierwszy przypadek odwzorowuje klasyczne działania komputera, a porucznik jest tutaj jedynym procesorem. W drugim przypadku porucznik jedynie inicjuje wyszukiwanie w zbiorze żołnierzy, gdzie każdy sam musi przetworzyć, czy ma się ujawnić ze swoimi zdolnościami. I to jest właśnie zrealizowane w tym ADMP. A co z tymi wybranymi muzykami? A, dostali rozkaz przeniesienia fortepianu ze świetlicy do kantyny…

Ciekawe, kiedy komputery z tą nową aktywną pamięcią pojawią się na rynku. Trzeba będzie też opracować nowe procesory główne wyposażając je w dodatkowe zestawy rozkazów współpracy z ADMP (a może już są opracowane?). Konieczne też będą zmiany w oprogramowaniu silników baz. Ale o tym na tej zmiętej kartce nic nie było…

* * *

Od tego felietonu wspólnie z redaktorem naczelnym postanowiliśmy zmienić tytuł kolumny w papierowym wydaniu CRN Polska z nobliwej nazwy AD VOCEM na moją, używaną od lat, nazwę zBITki. W tej nazwie pomieściłem bowiem kilka istotnych cech moich felietonów:

  • BIT – jednostka informacji, wskazująca tematykę teleinformatyczną,
  • Zbitki – wyrazów, słów tworzące przez połączenie słowa hybrydowe o nowym znaczeniu,
  • zbitki – myśli dotyczące danego zagadnienia biorące pod uwagę odmienne argumenty,
  • z bitki – tutaj raczej tylko poglądów na argumenty bez rękoczynów,
  • zbytki – gdyż czasem pozwalam sobie na szarganie prawd ustalonych.

Przy tej okazji zapraszam na moją aktualną stronę ze zBITkami, znajdującą się pod adresem www.iszkowski.eu. A z okazji 1 kwietnia proponuję przeczytanie umieszczonego tam felietonu z 1.4.1985 roku, gdzie jako żart primaaprilisowy opisałem box journal – czasopismo w elektronicznym pudełku do czytania – na kilkanaście lat przed 1998, gdy pojawił się pierwszy e-reader (jak się potem dowiedziałem nie byłem pierwszy z tym pomysłem, gdyż pojawił się on już w 1930 r.). Ciekawe.

  

Autor w latach 1993 – 2016 był prezesem Polskiej Izby Informatyki i Telekomunikacji. Pracował też w firmach: Oracle, DEC Polska, 2SI, EDS Poland, TP Internet. Obecnie jest senior konsultantem przemysłu teleinformatycznego.