Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование в широком смысле слова > Алгоритмика

Алгоритмика Об алгоритмах вообще; методы, обсуждения способов решения

Ответ
 
Опции темы
Старый 27.12.2011, 06:23   #1
FireOwl
Бывалый
 
Аватар для FireOwl
 
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений
(для 1,836 пользователей)
Большой объем данных

Что гуманнее по отношению к компьютеру - загрузить большой объем данных в память или постоянно обращаться к файлу на диске?
__________________
N"Gasta! Kvata! Kvakis!
Ahkstas so novajxletero (oix jhemile) so Ranetauw.
(Offline)
 
Ответить с цитированием
Старый 27.12.2011, 08:46   #2
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: Большой объем данных

Большой объем данных - это ____ Мб.
(Offline)
 
Ответить с цитированием
Старый 27.12.2011, 09:27   #3
YellowAfterlife
ПроЭктировщик
 
Аватар для YellowAfterlife
 
Регистрация: 19.02.2011
Сообщений: 134
Написано 81 полезных сообщений
(для 219 пользователей)
Ответ: Большой объем данных

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

Мой сайт-блог. Игры, обновления, примеры для Haxe, JavaScript(+HTML5), GameMaker, Love2d...
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
FireOwl (27.12.2011)
Старый 27.12.2011, 12:06   #4
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Большой объем данных

Самое гуманное - работать с буфером, размер которого не слишком большой для ОЗУ, но позволяет загружать объем данных, значительно превышающий размер одномоментно обрабатываемых данных. То есть, если нужно обрабатывать файл побайтно, а сам файл весит пару-тройку сотен МБ, берем буфер размером в пару МБ и работаем уже с ним, периодически загружая данные (как только ранее загруженные будут обработаны). В результате - и память не сильно загажена, и обращений к диску меньше.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо ViNT за это полезное сообщение:
FireOwl (27.12.2011), impersonalis (29.12.2011), SBJoker (27.12.2011)
Старый 29.12.2011, 00:10   #5
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Большой объем данных

Сообщение от ViNT Посмотреть сообщение
Самое гуманное - работать с буфером, размер которого не слишком большой для ОЗУ, но позволяет загружать объем данных, значительно превышающий размер одномоментно обрабатываемых данных. То есть, если нужно обрабатывать файл побайтно, а сам файл весит пару-тройку сотен МБ, берем буфер размером в пару МБ и работаем уже с ним, периодически загружая данные (как только ранее загруженные будут обработаны). В результате - и память не сильно загажена, и обращений к диску меньше.
Пожалуй, ещё стоит уточнить (на всякий случай), что "побайтно" здесь значит "последовательно байт за байтом", а не "один байт за раз"(размещённый при этом в произвольной части файла).
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
FireOwl (29.12.2011), ViNT (29.12.2011)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 23:04.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com