8

Таким образом, у меня есть компьютер с 3,45 ГБ оперативной памяти в соответствии с моей ОС (XP). У меня 2 ГБ виртуальной оперативной памяти.

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

Когда я смотрю, в чем проблема, я замечаю, что процессор обычно работает на 8-12%, а объем оперативной памяти обычно составляет 250 000+ КБ. Это заставляет мой компьютер работать медленно, что будет иметь смысл, если у меня будет только 512 или, может быть, гигабайт оперативной памяти. Я знаю, что 250000 - это совсем немного памяти для ОС, но имея всего 6 ГБ, я бы ожидал гораздо лучшей производительности.

Есть ли объяснение того, почему он будет работать так медленно?

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

5 ответов5

11

Могут ли некоторые из этих электронных таблиц быть в локальной сети? Если да, то какое у вас соединение с файлами в локальной сети (100 Мбит, Гигабит, беспроводной и т.д.)?

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

Кроме того, независимо от того, сколько памяти вы используете, вы, вероятно, обнаружите, что файл Excel.exe обычно не занимает столько памяти, сколько вы ожидаете. Есть ли на вашем компьютере другие процессы, которые не нужны? Много значков на панели задач (рядом с часами), которые вы не представляете, как они туда попали или для чего они нужны?

Наконец, многие компании используют Excel далеко за пределами его лучших функций, как, похоже, делает ваша компания (почему, о, почему они не используют базу данных, когда им нужна база данных, и оставляют Excel для простых функций записи и обработки данных ????), Я обнаружил, что при сравнении скорости Excel на наших более старых / более медленных компьютерах (4-летние настольные компьютеры IBM 8215 и 9645) и более новых / более быстрых компьютерах (6-месячные настольные ПК, 3269, 9964) и нет существенной разницы ,

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

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

6

Windows XP не очень хорошо справляется с использованием более 1 ГБ ОЗУ. Некоторые приложения могут использовать больше, но ни одно приложение не может использовать более 2 ГБ одновременно, по крайней мере по умолчанию - это самое большое виртуальное адресное пространство, которое может видеть приложение. Есть режим, который позволяет адресное пространство 3 ГБ, но это может вызвать проблемы совместимости для большого количества программного обеспечения.

Если ваша машина использует только 0,25 ГБ, это выглядит довольно странно - если только память не является вашим узким местом.

Если ваша машина "зависает", я предполагаю, что у вас много доступа к жесткому диску. Это может сделать проблему использования памяти Windows XP актуальной - Windows 7 гораздо более агрессивна в отношении прогнозирования того, что вы будете использовать в ближайшем будущем, и кеширования. Windows XP даже не будет использовать столько памяти для кеша, не говоря уже о том, чтобы попытаться выполнить прогнозное кеширование, так что у вас гораздо больше шансов "разбить" жесткий диск.

Если это проблема, некоторые варианты для рассмотрения ...

  1. Попробуйте использовать виртуальный диск, чтобы минимизировать использование жесткого диска. Поместите документы туда и убедитесь, что все временные файлы также хранятся там. Есть даже несколько доступных виртуальных дисков, которые будут использовать оперативную память за пределами 4 ГБ, к которым 32-битная Windows XP может получить доступ.

  2. Используйте raid-массив с чередованием, чтобы улучшить производительность жесткого диска.

  3. Используйте твердотельный жесткий диск, но имейте в виду, что если ваше приложение выполняет много операций записи, это может привести к чрезмерному износу этого SSD. Кроме того, Windows XP не оптимизирована для твердотельных накопителей - ищите обновления для поддержки Trim.

По сути, идея состоит в том, чтобы (1) заставить вашу систему использовать ОЗУ или (2, 3) инвестировать в оборудование, которое уменьшит узкие места вашей производительности.

2

Похоже, вы используете 32-битную операционную систему (вы не говорите наверняка в вопросе), в этом случае вы ограничены 3,45 ГБ адресуемой памяти. Windows просто не знает ни о какой памяти выше этого предела.

Это означает, что при запуске программ, которые используют много ресурсов, вы будете большую часть времени выполнять разбиение по страницам на диск, поскольку ОС вынуждена обмениваться данными в памяти с данными на диске. Вы могли бы попытаться увеличить размер вашего файла подкачки (предполагая, что вы подразумеваете это под виртуальной памятью), но вам лучше позволить Windows справиться с этим.

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

2

Я подозреваю, что что-то совершенно иное, чем текущие ответы: мне интересно, установлено ли обновление «Проверка файлов Microsoft Office для Office 2003, 2007 Office и Office 2010».

Это сводит сетевой доступ к файлам Excel до CRAWL. Мне понадобилось около 1 минуты, чтобы открыть файл 21k. Как только он оторвется, взорвитесь!

См. Мой пост здесь о сбое сервера и соответствующую статью базы знаний, которая отмечает это как "известную проблему".

https://serverfault.com/questions/286427/slow-opening-of-excel-files-on-the-network

1

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

Вот некоторые из ограничений, которые имеет Excel:

  • Excel 5: ограничено до 16 МБ
  • Excel 95/97/2000: ограничено до 64 МБ
  • Excel 2002: ограничено до 128 МБ
  • Excel 2003: ограничен рабочим набором 1 ГБ , меньше для реальных рабочих книг
  • Excel 2007: ограничен рабочим набором 2 ГБ , меньше для реальных рабочих книг
  • Excel 2010: ограничено 2 ГБ в 32-разрядном Excel, 8 терабайт (8000 ГБ) в 64-разрядном Excel

Источник и дополнительная информация: ограничения памяти Excel, Чарльз Уильямс, Microsoft Excel MVP

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .