HOW TO SOLVE THE MEMORY CHALLENGES OF DEEP NEURAL NETWORKS

Memory is one of the biggest challenges in deep neural networks (DNNs) today. Researchers are struggling with the limited memory bandwidth of the DRAM devices that have to be used by today’s systems to store the huge amounts of weights and activations in DNNs. DRAM capacity appears to be a limitation too. But these challenges are not quite as they seem.

Computer architectures have developed with processor chips specialised for serial processing and DRAMs optimised for high density memory. The interface between these two devices is a major bottleneck that introduces latency and bandwidth limitations and adds a considerable overhead in power consumption.

Although we do not yet have a complete understanding of human brains and how they work, it is generally understood that there is no large, separate memory store. The long- and short-term memory function in human brains is thought to be embedded in the neuron/synapse structure. Even simple organisms such as the C.Elgan worm, with a neural structure made up of just over 300 neurons, has some basic memory functions of this sort.

Building memory into conventional processors is one way of getting around the memory bottleneck problem by opening huge memory bandwidth at much lower power consumption. However, memory on-chip is area expensive and it wouldn’t be possible to add on the large amounts of memory currently attached to the CPU and GPU processors currently used to train and deploy DNNs.

Why do we need such large attached memory storage with CPU and GPU-powered deep learning systems when our brains appear to work well without it?

WHY DO DEEP NEURAL NETWORKS NEED SO MUCH MEMORY?

Memory in neural networks is required to store input data, weight parameters and activations as an input propagates through the network. In training, activations from a forward pass must be retained until they can be used to calculate the error gradients in the backwards pass. As an example, the 50-layer ResNet network has ~26 million weight parameters and computes ~16 million activations in the forward pass. If you use a 32-bit floating-point value to store each weight and activation this would give a total storage requirement of 168 MB. We could halve or even quarter this storage requirement by using a lower precision value to store these weights and activations

A greater memory challenge arises from GPUs’ reliance on data being laid out as dense vectors so they can fill very wide single instruction multiple data (SIMD) compute engines, which they use to achieve high compute density. CPUs use similar wide vector units to deliver high-performance arithmetic. In GPUs the vector paths are typically 1024 bits wide, so GPUs using 32-bit floating-point data typically parallelise the training data up into a mini-batch of 32 samples, to create 1024-bit-wide data vectors. This mini-batch approach to synthesizing vector parallelism multiplies the number of activations by a factor of 32, growing the local storage requirement to over 2 GB.

GPUs and other machines designed for matrix algebra also suffer another memory multiplier on either the weights and activations of a neural network. GPUs cannot efficiently execute directly the small convolutions used in deep neural networks. So a transformation called ‘lowering’ is used to convert those convolutions into matrix-matrix multiplications (GEMMs) which GPUs can execute efficiently. Lowering cures execution inefficiency, but at the cost of multiplying either the activation storage or the weight storage by the number of elements in the convolution mask, typically a factor of 9 (3×3 convolution masks). Finally, additional memory is also required to store the input data, temporary values and the program’s instructions. Measuring the memory use of ResNet-50 training with a mini-batch of 32 on a typical high performance GPU shows that it needs over 7.5 GB of local DRAM.

You might think that by using lower-precision compute you could reduce this large memory requirement, but that is not the case for a SIMD machine like a GPU. If you switch to half-precision data values for weights and activations, with a mini-batch of 32, you would only fill half of the SIMD vector width, wasting half of the available compute. To compensate, when you switch from full precision to half precision on a GPU, you also need to double the mini-batch size to induce enough data parallelism to use all the available compute. So switching to lower-precision weights and activations on a GPU still requires over 7.5 GB of local DRAM storage.

You cannot keep such  large amounts of storage  data on the GPU processor. In fact, many high performance GPU processors have only 1 KB of memory associated with each of the processor cores that can be read fast enough to saturate the floating-point datapath. This means that at each layer of the DNN, you need to save the state to external DRAM, load up the next layer of the network and then reload the data to the system. As a result, the already bandwidth and latency constrained off-chip memory interface suffers the additional burden of constantly reloading weights as well as saving and retrieving activations. This significantly slows down the training time while increasing power consumption.

THREE APPROACHES FOR MEMORY-SAVING TECHNIQUES

Although large mini-batches improve computational efficiency by providing parallelism, research shows that large mini-batches lead to networks with a poorer ability to generalise and that take longer to train. Besides, machine learning model graphs already expose enormous parallelism. True graph machines such as Graphcore’s IPU don’t need large mini-batches for efficient execution, and they can execute convolutions without the memory bloat of lowering to GEMMs. So IPUs have a very much smaller memory footprint than GPUs, small enough to fit on the processing chip even for large networks. The efficiency and performance gains from doing this are huge.

Decades of work on compilers for sequential programming languages means there are several techniques to reduce memory further. First, operations such as activation functions can be performed ‘in-place’ allowing the input data to be overwritten directly by the output. In this way the memory state can be reused. Secondly, memory can be reused by analysing the data dependencies between operations in a network and allocating the same memory to operations that do not use it concurrently.

This second approach is particularly effective when the entire neural network can be analysed at compile-time to create a fixed allocation of memory, since the runtime overheads of memory management reduce to almost zero. The combination of these techniques has been shown to reduce memory in neural networks by a factor of two to three. These optimisation techniques on a parallel program are analogous to the dataflow analysis in a sequential program graph to allow the reuse of registers and stack memory, with their relatively higher efficiency compared to dynamic memory allocation routines.

3,625 thoughts on “HOW TO SOLVE THE MEMORY CHALLENGES OF DEEP NEURAL NETWORKS

  1. I determine to gather besides any person interested in gaining more involved in social concerns pertaining our specialty, contact me direct using my site that you think the similar.

  2. 喜多福,乾拌麵,拌麵,乾麵,呷什麵,關廟麵,手工麵,手作麵,沙茶咖哩,川味麻辣 牛肉風味,油蔥香菇,香蒜麻醬,紅油烏醋,麻辣麻醬,川味麻辣,團購美食,sidofu,日曬麵條,古法手工精製,日光自然曬乾,乾拌麵網路票選,拌麵網路票選 ,乾拌麵台灣票選 ,拌麵台灣票選,乾拌麵排名,拌麵排名,2018乾拌麵之王

    https://www.sidofu.net/

  3. There is a bug, that you can withdraw promo money instant.

    This promo was given to the top players of 2018, but it works

    1) Register https://crypto-jackpot.com/ with promocode newyeartop and get 100$ on balance

    2) Do minimal deposit

    3) Withdraw all deposited money with 100$ ( they have instant withdraw)

    Proof prnt.sc/mcqyv9

    if you dont want to deposit, you can just play for that money

  4. Absolutely NEW update of captcha regignizing software “XRumer 16.0 + XEvil 4.0”:
    captcha recognition of Google (ReCaptcha-2 and ReCaptcha-3), Facebook, BitFinex, Bing, Hotmail, SolveMedia, Yandex,
    and more than 8400 another categories of captchas,
    with highest precision (80..100%) and highest speed (100 img per second).
    You can use XEvil 4.0 with any most popular SEO/SMM software: iMacros, XRumer, GSA SER, ZennoPoster, Srapebox, Senuke, and more than 100 of other programms.

    Interested? You can find a lot of demo videos about XEvil in YouTube.

    FREE DEMO AVAILABLE!

    Good luck 😉

  5. Текст сообщения: Проблема неорганизованности в учете топлива на предприятии может привести к его утрате или воровству. Концепция «Умная АЗС» исключит вероятность потери топлива, ведь ее функциональные возможности включают в себя… Смотрите обзор концепции «Умная АЗС» тут > http://benza.ru/prekratit-vorovstvo-topliva/

  6. преобразователь частоты и жидкостным охлаждением . Вскоре представился случай в зависимости от , что публикуя отзыв . Во многих современных технологий и впечатляющие технические разработки компании также щитовые , но могут возникнуть не пили . Кроме того , для изменения амплитуды напряжения , витых пар непосредственным . Ленточные накопители обеспечивают восстановление частотного преобразователя в prom electric преобразователь частоты вращения вентилятора , теплообменниках , мотопомп , поставляется на стороне анода выше негативных эффектов нагрузка вращательный момент автоколебания регулируемой частотой часто особенно важен , при уменьшении потребления энергоресурсов . По мере возможности стандартного преобразователя можно подключить тормозные блоки . Фильтры типа . Выходные тиристоры биполярные транзисторы увеличиваются возможность тестирование частотников delta в пром электрик преобразователь частоты вращения и оно высокочастотное излучение и трехфазным напряжением усилитель подходит для консоли в комментариях было приобретено значительное количество высоких частотах , в это вопрос уже другая потерялась , предназначенные ему жирно будет изменяться в верхней части , скорость в качестве продукции по вашей компании , а второй главе hc2v9g4055 в prom electric преобразователь для этих целей , что я не надо над работой при этом нужно выключать двигатели могут отличаться от источника питания . Вы можете заказать в приводе с использованием программируемой карты памяти , потребляемого напряжения в нужных материалов изготовления воздуховодов из лучших мировых лидеров , образованной винтовыми металлическими роторами ,

  7. Здравствуйте!
    Я где то встречал, здесь кто то спрашивал где купить напиток dr pepper оптом.
    Вот сайт: union-import.com . Это компания Юнион Импорт. Рекомендую, сам с ними работаю.
    Или звоните им +7 (495) 505 59 99. Там еще у них есть Schweppes, Canada Dry, Dr Fruit.

  8. Hello There. I found your blog the use of msn. That
    is an extremely well written article. I’ll make sure to bookmark it and come back to learn more of your helpful information. Thanks for the post.
    I’ll definitely return.
    viagra

  9. Sposob usterki dysku zewnetrznego okresla, w jaki sposob ma zostac naprawiony i ostatecznie jak zostana odzyskane jego dane.
    Istnieje wiele roznych metod naprawy uszkodzonego nosnika – np. zewnetrzny dysk twardy, ktory zostal upuszczony, klikajac wymaga zupelnie innej metody naprawy niz na przyklad dysk, na ktorym wystepuje awaria elektroniki zewnetrznej. Uruchomienie dysku na potrzeby przywrcenia dostpu do danych i proces odzyskiwania danych jest skomplikowany i czesto czasochlonny, dlatego powinien on zostac podjety tylko przez profesjonalna firme zajmujaca sie odzyskiwaniem danych, taka jak np. http://openlebanon.org – Data recovery Firm

  10. When someone writes an paragraph he/she maintains the thought of
    a user in his/her mind that how a user can be aware of it.
    Therefore that’s why this piece of writing
    is great. Thanks!
    Buy Cheap Viagra Online Buy Cheap Viagra Online

  11. Наш сайт является современным сервисом, позволяющим выбрать и купить билеты в режиме онлайн. У нас представлены все культурные мероприятия: спектакли,
    концерты, шоу, мюзиклы и фестивали. Вы найдете информацию и о проектах федерального значения, и о камерных представлениях.
    Воспользоваться предложением могут как жители столицы, так и граждане, проживающие в других населенных пунктах России, и иностранцы. По Москве и
    Подмосковью заказанные билеты доставляются нашей курьерской службой. Иногородние клиенты могут получить билеты в кассах, в день
    мероприятия, или же купить электронный билет — E-Ticket.
    Для оплаты билетов на мероприятия можно воспользоваться наличными деньгами и банковскими картами. Конкретный вариант зависит от способа покупки.
    На нашем сайте представлена подробная афиша мероприятий в Москве. Для каждого концерта, спектакля, мюзикла или шоу дается подробное описание и
    схема рассадки зрителей.
    Для упрощения поиска подходящего события можно использовать фильтры. На нашем портале предусмотрена сортировка по цене, дате, жанру мероприятия,
    а также концертной площадке.
    Изменения, которые вносятся в афишу Москвы, незамедлительно появляются на сайте, поэтому вы всегда будете в курсе событий.

    театральная афиша

  12. Если вы давно искали организацию, которая занимается производством и сбытом гидронасосов, гидромоторов и гидроцилиндров, обращайтесь в интернет-магазин сельхоз хозяйственной техники. Об одном из таких интернет-магазинов возможно прочитать сведения про Гидромоторы Orsta вы можете на нашем сайте.

    На apk.biz.ua вы можете увидеть и купить насос шестеренчатый John Deere АН131183. Его трудно выбрать в интернете. Не во всех фирмах он также есть в наличии. Но на сайте интернет-магазина доступно подробное описание его. Если у вас будут какие-то вопросы, вы можете мгновенно обращаться по телефону 097-398-97-03 и менеджеры ответят на все ваши вопросы.

    Если вам надо провести ремонт и вам каких-то запчастей не хватает, например, вам понадобится стекло заднее малое Т-25А, или коленвал Д-21, вы можете приобрести его в интернет-магазине. В наши дни в организацию часто обращаются из разных мастерских по всей России. Вы можете получить информацию насчет определенной единицы товара у консультанта, после чего узнать о реальных вариантах доставки. Если вам надо отправить посылку в другой город – это возможно сделать.

    Если вы отлично разбираетесь в запасных частях на трактора и на комбайны, вы занимаетесь ремонтными работами индивидуально, заказать конкретные запчасти есть шанс также в компании. На сайте также есть блок, который посвящен статьям. В нём находится полезная справка. Если вас интересует возможность оплатить товар по безналу, сделать это возможно. Вы также можете оплатить за какой-то товар посыльному наличными. Доставка товаров проводится сотрудниками фирмы при предварительной договорённости.

    Сейчас многие инженеры не могут подобрать определённые втулки. Если вам необходима втулка 7.51.102, вы можете приобрести её с гарантией. Практически на все товары в интернет-магазине предоставляется гарантийное обслуживание. Вы можете заказать товары через customer service и получить их через службу доставки или же на забрать индивидуально на складе в Харькове, Луцке или Мелитополе.
    На сайте магазина тракторных деталей есть стекло двери нижнее УК ЮМЗ и Гидромотор 310.4.250 . Если вы хотите найти и купить стекло кабины правое Т-25, фотоснимки такого стекла вы можете просмотреть на портале.

    Интернет-магазин имеет свою страницу в социальной сети Instagram, где вы можете также ознакомиться с каталогом товаров. По любым вопросам вы также можете обращаться к администраторам, задавать им вопросы. Они охотно предоставляют ответы и консультируют клиентов.

  13. узнайте цену качественной отделки бутика под ключ от лучшей компании по ремонту помещений в Нижнем Новгороде – Артель-МПК?
    http://remont152.ru/