Содействие - исключение из 3-го закона Ньютона.

Амальгама

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Амальгама » Reductor Sapiens » Новая теория памяти – прорыв или утопия? #2


Новая теория памяти – прорыв или утопия? #2

Сообщений 361 страница 390 из 2001

1

.

Отредактировано Шарпер (2021-12-04 22:51:04)

0

361

#p169156,Лукомор написал(а):

Получается,  это адресуемая память?!

Обычная каталогизация, с вложенными каталогами(современными папками), где на каждой папке (файле) написан перечень документов, хранящихся в ней.

0

362

#p169154,Лукомор написал(а):

Если не трудно, еще раз:

1. Что за "проблема расстановки",
2. Что за "проблема поиска",
и 3. Как одна проблема порождает другую?

Ни хрена себе пельмень! Страница 303

0

363

#p169155,Ал написал(а):

это просто шикарная фраза, ибо в двоичном представлении есть только нули и единицы. для меня эта фраза сводит всё пространство памяти к четырём ячейкам, и я не в силах постичь в силу слабого умственного развития всю мощь этого посыла.

Симметрично. Я тоже не могу постичь что здесь неясного. Ну вот насчет нумерации домов с разделением на четную/нечетную стороны тебе понятно?  Если нет, то тебе уже никто не поможет. Так вот, если четные считать нулями, а нечетные единицами, можешь записать например 011001 адресами?

0

364

#p169159,Шарпер написал(а):

Ни хрена себе пельмень! Страница 303

Ну вот, зачем-то достали из нафталина дедушку Санта-Никлауса Вирта....
Забавно...
За 45 лет, прошедших с того времени, когда он писал эти проникновенные строки с 303 страницы, было обнаружено и решено столько проблем,
что никто уже и не помнит этих глупостей...

Отредактировано Лукомор (2021-12-24 21:32:13)

0

365

#p169160,Шарпер написал(а):

можешь записать например 011001 адресами?

Так то адресами, это чисто адресная память. только вид сбоку...
А что там с ассоциативной?!

0

366

#p169146,Лукомор написал(а):

Тут еще такой нюанс: языков нижнего уровня, которые работают непосредственно с памятью, и имеют для этого соответствующие инструменты -
адреса, указатели и.т.п осталось крайне мало, С,С++, что-то там еще...

И я о том же

#p169156,Лукомор написал(а):

Получается,  это адресуемая память?!

Название папки "Счета" - уже адресация

#p169147,Шарпер написал(а):

Поэтому я и говорил о схемотехниках

Я таких не знаю. Я не уверен, что они вообще существуют.

#p169147,Шарпер написал(а):

Cнова рассказать о коммутаторе штоле?

Ну расскажи. Только не про то, как он устроен, а чем он лучше современных систем связи?

#p169150,Шарпер написал(а):

И закрывают этим технический прогресс.

Ничего не закрывают. Отсутствие реформ в алфавите точно не является тормозом для прогресса литературы. Скорее наоборот.

#p169157,Ал написал(а):

Там плюсов быть и не может

Не подсказывай Шарперу, пусть он сам это ответит.

0

367

#p169163,Лукомор написал(а):

А что там с ассоциативной?!

Почтальон не может разобрать адрес на конверте, но помнит в какой дом он в прошлый раз носил письмо с похожим конвертом

0

368

#p169161,Лукомор написал(а):

что никто уже и не помнит этих глупостей...

Ты сам напросился на ликбез о расстановке. А проблема остается. Ниже еще одну статью разиещу

0

369

#p169163,Лукомор написал(а):

Так то адресами, это чисто адресная память. только вид сбоку...
А что там с ассоциативной

А то, что такой способ дает решение проблемы. Впрочем, поскольку ты понятия не имеешь о существовании такой проблемы, тебе невозможно объяснить в чем ее решение. И не только тебе.

0

370

#p169173,Zagar написал(а):

Ну расскажи. Только не про то, как он устроен, а чем он лучше современных систем связи?

Речь не о связи, а о памяти

#p169173,Zagar написал(а):

Ничего не закрывают. Отсутствие реформ в алфавите точно не является тормозом для прогресса литературы. Скорее наоборот.

Неверная аналогия. Любой ЯВУ имеет основания на машинном уровне и, не затрагивать их невозможно.

0

371

Ликбез насчет ассоциативной памяти, а то сдается, что проблема непонимания основана на полном неведении о существовании проблемы.

Наиболее общая задача компьютеров — работа с информацией. А самый быстрый способ получить информацию — найти ее по определенному параметру (по ассоциации). Однако компьютерная память имеет не ассоциативную, а адресную структуру, а cуществующие способы ускорения доступа (сортировка, индексирование, хеширование) на самом деле — просто создание на уровне программного обеспечения виртуальной ассоциативной памяти. А что, если для радикального ускорения работы создать плату расширения, которая работала бы ассоциативной памятью?

Мир захлестнула волна информации. И чтобы найти в этом потоке то, что нам нужно, необходимы средства для быстрого поиска и выборки информации. Как правило, информация хранится в виде баз данных, которые, в том или ином виде, стоят сейчас почти на каждом компьютере. Поскольку обычно базы данных существуют в виде таблиц, стоит начать с рассмотрения типичной структуры таблицы в реляционной базе данных. Все поля, входящие в таблицу, можно разбить на три группы: системные поля, поля наименования, и поля данных.

Системные поля — это ключи. В них входят первичный ключ (счетчик) для связи с подчиненными таблицами и вторичные ключи для связи с главными таблицами (если данная таблица является подчиненной).

Поля наименования — это те поля, по которым пользователь может идентифицировать описанный в таблице объект в ряду себе подобных. Для предотвращения дублирования записей (т.е. появления "двойников") необходимо обеспечивать уникальность записей. Типы полей — строковые, реже — числовые или дата/время.

Поля данных — в них хранятся данные об объекте. Это поля типа числовые, денежные, дата/время, и т.д.

При работе с таблицей одна из главных задач — выборка, причем в большинстве случаев выборка осуществляется по параметру (то есть из таблицы выбираются только те записи, которые соответствуют некоторому условию). Существуют два подхода к выборке: "сверху", со стороны пользователей, и "снизу", со стороны аппаратного обеспечения ("железа").

При подходе "сверху" главный определяющий фактор — удобство пользователя. Существует много способов доступа к данным в таблицах, но наибольшее распространение получил язык SQL. Фактически SQL фактически стал индустриальным стандартом для реляционных баз данных. Американский Институт Национальных Стандартов (ANSI) в 1986 году объявил язык SQL стандартом для реляционных баз данных. То же самое сделала и Международная Организация по стандартам (ISO). Все основные реляционные системы управления баз данных поддерживают в том или ином виде язык SQL, и большинство разработчиков реляционных систем управления базами данных стремятся следовать стандарту ANSI ([1], глава 2, стр. 4). Конструкторы SQL встроены в настольные СУБД (ACCESS, Delphi), серверные приложения работают в основном с SQL (ORACLE, SQL server).

В команде SQL указывается сама команда (действие, которое надо совершить), область выборки (таблицы, из которых необходимо произвести выборку), данные, которые должны быть выданы (список полей), условия связи между таблицами и условия отбора, то есть по команде SQL фактически осуществляется ассоциативная выборка из базы данных.

При подходе "снизу" главный определяющий фактор — архитектура компьютера. В настоящее время компьютеры имеют адресную структуру памяти и приспособлены для операций "мало данных — много команд", а при работе с данными (при выборке) чаще всего происходят операции типа "много данных — мало команд" Произошедшее за последнее время бурное развитие компьютерной техники не только не решило, а скорее усугубило эту проблему. Производительность процессоров увеличилось во много раз, увеличилась емкость винчестеров и размер оперативной памяти. А вот производительность канала память — процессор увеличилась очень незначительно, и является в данный момент камнем преткновения. Применение аппаратных средств ускорения (кэширования) тоже не очень эффективно из-за больших объемов данных.

Для того, чтобы получить доступ к нужной записи в таблице необходимо либо перебирать все записи (для этого потребуется N циклов, N — число записей в таблице), либо найти адрес записи (так как память компьютера имеет адресную архитектуру). Для ускорения поиска прилагаются большие усилия: применяют сортировки (то есть записи упорядочивают в определенном порядке), индексирование, и хеширование (адрес записи — некоторая функция от значения аргумента записи). Рассмотрим подробнее все эти способы.
Сортировки

При дихотомическом поиске в упорядоченном массиве количество циклов поиска — log2 N, где N — число записей в таблице. Но сортировки производят только по одному полю. После совершения любого действия над записями (добавления, изменения, удаления) приходится производить упорядочивание (пересортировку) таблицы, а число перестановок возрастает в геометрической прогрессии при увеличении количества записей.
Индексирование

Индексы — это специальные конструкции, которые позволяют быстро найти адрес нужной записи и в настоящее время они широко применяются на практике. На одну таблицу можно создавать несколько индексов. В качестве примера можно рассмотреть рекомендации по применению индексов в ORACLE ([1], глава 18, стр. 14). Они сводятся к следующему: рекомендуется использовать индексы для обеспечения уникальности записей; для ускорения выборки данных; задавать индексы для тех полей, выборку по которым производится чаще всего, и при этом рекомендуется задавать на таблицу не более 3 индексов, что очень мало. На практике применяют индексы следующим образом: в системных полях таблиц используют 1-2 индекса, и еще один индекс — на поля наименования. Область данных почти никогда не индексируют, хотя отбор чаще всего происходит именно по этим полям ([1], глава 2, стр. 22-33, глава 3, стр. 3). Кроме того, обновление индексов также требует времени, а сами индексы занимают место на диске (а иногда размер индексов превышает размер основной таблицы).

Поэтому индексация таблиц не очень помогает: индексы занимают место (а иногда могут превышать размеры таблиц), кроме того, они не помогают в случае отбора по неиндексированному полю.
Хеширование

При хешировании записей под таблицу сразу выделяют с запасом некоторый объем памяти, и адрес записи в этом объеме — некоторая функция от содержимого одного из полей записи (хеш-функция). Хеширование также проводят по одному полю. Недостатки этого способа: необходимость в избыточном резервировании памяти. Кроме этого, даже при достаточно большом выделенном объеме памяти возможна ситуация, при котором на некоторое место претендуют сразу две или более записей, то есть возникает коллизия.
Выводы

Проблема быстрого доступа к данным на машинах с адресной памятью до сих пор не решена. При работе с адресной памятью трудно добиться существенного повышения скорости доступа на аппаратном уровне, так как при обращении к памяти всегда необходимо указывать адрес данных, и за один цикл можно обратиться только к одной ячейке памяти [2, стр. 152]. В настоящее время ускорение доступа происходит благодаря программному обеспечению, которое фактически создает виртуальную ассоциативную память на машинах с адресной памятью, что не очень эффективно.

Существенно повысить скорость доступа к данным можно если включить в состав компьютера память с адресацией по содержанию (ассоциативной памяти). Применение ассоциативной памяти позволяет существенно повысить скорость выборки и упростить доступ к данным. Так как при выборке происходит ряд логических операций по отбору данных, то отпадает необходимость в специальных программных конструкциях по ускорению доступа: сортировках и хешировании, а индексы потребуются только для обеспечения уникальности записей и задания связей между таблицами. Уже создан ряд микросхем ассоциативной памяти, их применение позволяет существенно повысить производительность.

Так как устройство с ассоциативной памятью предназначено для повышения скорости доступа при работе с базами данных, то наиболее целесообразно выполнить его в виде отдельной платы расширения для компьютера. Впоследствии на основании этой платы может быть создан сопроцессор данных (SQL-сопроцессор).

Плата расширения с ассоциативной памятью должна обладать следующими конструктивными особенностями:

    Возможность адресного и ассоциативного доступа к хранящимся в памяти данным. Адресный доступ необходим для того, чтобы можно было бы работать с конкретной записью. Кроме того, при наличии адресного доступа становится возможным использование библиотек тестов, разработанных для адресной памяти.

    Модульная конструкция памяти. Так как заранее невозможно определить круг задач, решаемых устройством, то ассоциативная память должна быть максимально гибкой и допускать возможность настройки для решения различных задач.

    Устройство управления ассоциативной памятью должно при помощи микропрограмм выполнять не менее 90% запросов, направляемых к памяти. В остальных случаях с памятью работают как с обычной адресной памятью, или производят выборку на базе имеющихся микропрограмм с последующей обработкой результатов.

Плата расширения может быть использована для повышения производительности серверов (за счет обработки информации на этапе считывания из памяти, а также уменьшения нагрузки на шины) баз данных типа ORACLE и SQL SERVER, расположенных на машинах x86, а также для обработки графики, при этом применение платы расширения должно быть оправдано по критерию "стоимость — эффективность" (то есть применение платы стоимостью 100-200$ приводит к увеличению производительности машины раза в полтора).

В дополнение к этому, станет невозможным несанкционированное копирование программ. Так как при работе программы постоянно происходит обращение к плате расширения, то без нее программа просто не запустится или будет работать в демо-режиме с соответствующими ограничениями. При этом количество одновременно работающих программ ограничено количеством устройств.

Вообще, стоит отметить, что использование специальных аппаратных средств для повышения производительности компьютера при выполнении узкоспециализированных задач — достаточно традиционный подход к решению проблемы. Если вспомнить историю, то в начале 80-х годов для ускорения расчетов был создан математический сопроцессор, а в середине 90-х для ускорения вывода графики — 3D ускоритель (видеопроцессор).

0

372

#p169183,Шарпер написал(а):

Речь не о связи, а о памяти

Ну и расскажи, чем коммутатор лучше обычной памяти.

#p169183,Шарпер написал(а):

Неверная аналогия. Любой ЯВУ имеет основания на машинном уровне и, не затрагивать их невозможно.

Точная аналогия. Любой текст основан на буквах алфавита, и нельзя написать текст, не используя буквы. Но задача повышения качества литературы не может быть решена изменениями в алфавите. Ухудшить можно, а улучшить - нет.

0

373

#p169188,Zagar написал(а):

Ну и расскажи, чем коммутатор лучше обычной памяти.

Тем что он не требует хранения данных, а лишь коммутирует входной сигнал с точкой запуска соттветствующей реакции на него

#p169188,Zagar написал(а):

Точная аналогия. Любой текст основан на буквах алфавита

Нет. В алфавите всего две буквы 0 и 1, которым Вы благополучно отказали в использовании. Напоминаю -

#p169140,Zagar написал(а):

они давно не мыслят категориями двоичного представления данных

0

374

#p169188,Zagar написал(а):

нельзя написать текст, не используя буквы

Народ таки умудряется. И я сейчас не про китайцев, японцев и корейцев всяческих, а вполне по-русски.

https://pbs.twimg.com/media/Am4GkujCMAERSKX.jpg:large
https://pbs.twimg.com/profile_banners/2802902399/1502371712/1500x500

Отредактировано DoctorLector (2021-12-24 23:34:12)

+1

375

#p169188,Zagar написал(а):

Ну и расскажи, чем коммутатор лучше обычной памяти.

Лучше даже уточнить -  коммутация внешнего сигнала с реакцией на него  управляется  самим внешним сигналом.

0

376

#p169193,DoctorLector написал(а):

по-русски.

Кхм... Вас оправдывает только то, что это отвлеченный пример...

0

377

#p169194,Шарпер написал(а):

коммутация внешнего сигнала с реакцией на него  управляется  самим внешним сигналом.

Это не так даже для схемы дверного звонка. Лично я в цепь поставил клавишный выключатель внутри квартиры. Извне ночью хоть обсигналься.

+1

378

#p169196,Шарпер написал(а):

Вас оправдывает только то, что это отвлеченный пример

Естественно. Ещё бы не хватало рисовать геометрические фигуры на присутствующих.

0

379

#p169197,DoctorLector написал(а):

Это не так даже для схемы дверного звонка. Лично я в цепь поставил клавишный выключатель внутри квартиры. Извне ночью хоть обсигналься.

Так звонок не дверью управляет, а запускает Вашу реакцию на него. Вот Вы и разрываете цепь.

0

380

#p169198,DoctorLector написал(а):

геометрические фигуры

Сдается мне, что скоро создадут полную версию алфавита

0

381

#p169190,Шарпер написал(а):

Тем что он не требует хранения данных, а лишь коммутирует входной сигнал с точкой запуска соттветствующей реакции на него

И почему тогда в современных смартфонах не используют коммутаторы?

#p169190,Шарпер написал(а):

В алфавите всего две буквы 0 и 1, которым Вы благополучно отказали в использовании.

Все буквы в русском языке (а хоть бы и китайские иероглифы) состоят из двух элементов - черных и белых точек. И писателю точки эти по барабану, он мыслит в совсем других категориях, у него другие задачи и проблемы. Собственно, и буквы ему тоже по барабану, изменение вида этих букв не решит его литературных задач.
Программисты точно так же. Они не только не мыслят категорией двоичных записей, но даже и категориями байтов (т.е. буквами, составленными из 0 и 1) им особо незачем мыслить.

0

382

#p169200,Шарпер написал(а):

звонок не дверью управляет, а запускает Вашу реакцию на него. Вот Вы и разрываете цепь.

Я управляю прохождением внешнего сигнала.

0

383

#p169203,Zagar написал(а):

Программисты точно так же

как люди. Едят, спят... И всё такое.

0

384

#p169193,DoctorLector написал(а):

Народ таки умудряется. И я сейчас не про китайцев, японцев и корейцев всяческих, а вполне по-русски.

А это как раз хороший пример, как изменение способа записи букв способно повлиять на качество текста. Сложность прочтения возрастает, а качество фразы не улучшилось. Кстати, сам такой.

#p169190,Шарпер написал(а):

В алфавите всего две буквы 0 и 1

Кстати, ты всё время забываешь, что в реальном компе вообще нет никаких 0 и 1, это в чистом виде выдумка, там на самом деле электроны бегают и никаких букв и цифер не бывает.

+1

385

#p169206,Zagar написал(а):

Кстати, сам такой.

Какой?

0

386

Вот же ж дисклеймер:

#p169198,DoctorLector написал(а):

Ещё бы не хватало рисовать геометрические фигуры на присутствующих.

Я всего лишь взял из интернета примеры текста из фигур. Оба. Уж какие есть, извиняйте.

0

387

#p169203,Zagar написал(а):

И почему тогда в современных смартфонах не используют коммутаторы?

Не в курсе. Даже не понял к чему это в контексте памяти

#p169203,Zagar написал(а):

Программисты точно так же. Они не только не мыслят категорией двоичных записей, но даже и категориями байтов (т.е. буквами, составленными из 0 и 1) им особо незачем мыслить.

От блондинок с купленными правами тоже глупо ожидать знания конструкции автомобиля

0

388

#p169204,DoctorLector написал(а):

Я управляю прохождением внешнего сигнала.

И я о том же. Но Вы-то сначала попытались соверщить традиционную ошибку связав сигнал непосредственно с замком, а не с собой

0

389

#p169206,Zagar написал(а):

Кстати, ты всё время забываешь, что в реальном компе вообще нет никаких 0 и 1, это в чистом виде выдумка, там на самом деле электроны бегают и никаких букв и цифер не бывает.

Скорее это Вы эклерите, что я много раз утверждал, что состояние не число, но число непременно физическое состояние и является человеческим изобретением.

0

390

#p169160,Шарпер написал(а):

можешь записать например 011001 адресами

какая-то у тебя разрядность непонятная...
и это, то есть, ячейки памяти предлагаешь сначала присвоить десятичный номер?
Ну круто, чё...

#p169160,Шарпер написал(а):

Симметрично.

и это, симметрично чему? выводу питания?

#p169184,Шарпер написал(а):

Ликбез насчет ассоциативной памяти, а то сдается, что проблема непонимания основана на полном неведении о существовании проблемы.

Наиболее общая задача компьютеров — работа с информацией. А самый быстрый способ получить информацию — найти ее по определенному параметру (по ассоциации). Однако компьютерная память имеет не ассоциативную, а адресную структуру, а cуществующие способы ускорения доступа (сортировка, индексирование, хеширование) на самом деле — просто создание на уровне программного обеспечения виртуальной ассоциативной памяти. А что, если для радикального ускорения работы создать плату расширения, которая работала бы ассоциативной памятью?

Бред. Это не ассоциативная память, а ассоциативно-каталогизированная. И речь не о доступе, *рука-лицо* а о поиске.

0


Вы здесь » Амальгама » Reductor Sapiens » Новая теория памяти – прорыв или утопия? #2