Выделить место в памяти для Xcode
Поскольку Xcode запускается в ОЗУ и считывает данные для записи в хранилище. Это создает узкое место, поскольку большинство передовых SSD примерно в 400 раз медленнее, чем RAM. Вторая проблема — задержка передачи данных.
Решение выше, если мы позволим Xcode читать и записывать в оперативной памяти выше, проблема может быть исправлена. Мы можем следовать следующей логике, чтобы добиться того же:
- Настроить оперативную память. Создайте специальный блок в памяти для использования Xcode.
- Позвольте Xcode подключиться к выделенному пространству памяти, которое мы создали.
Для первого шага нам нужно создать сценарий оболочки следующим образом:
Когда вы запустите приведенный выше скрипт, вы увидите, что у вас есть дополнительное пространство памяти с именем xcodeDeriveData
размером 2048 МБ.
Теперь мы делаем второй шаг, то есть подключаем новое пространство для получения местоположения данных. Это может быть достигнуто следующим образом:
Теперь по мере чтения запись будет происходить в ОЗУ. Xcode будет относительно быстрее.
Меры предосторожности, так как производные данные находятся в ОЗУ. повторное определение сотрет полученные данные. Кроме того, я выделил 2 ГБ для получения данных, так как объем оперативной памяти моей системы составляет 32 ГБ.
Увеличьте количество потоков выполнения XCode
XCode использует то же количество потоков, что и ядро ЦП, для компиляции по умолчанию, но поскольку операций ввода-вывода в процессе компиляции часто больше, чем операций ЦП, соответствующее увеличение числа потоков может в определенной степени ускорить компиляцию. Для себя я делаю 2x ядра процессора
defaults write com.apple.Xcode PBXNumberOfParallelBuildSubtasks 14
Измените формат отладочной информации на Dwarf.
Измените параметр «Только активная архитектура сборки» на «Да».
Уменьшить уровень оптимизации компиляции для отладочных сборок.
Интеграция ресурсов
- Упакуйте общий код и файлы в статические библиотеки
- Добавить предварительно скомпилированные файлы, поместить общие заголовочные файлы в предварительно скомпилированные файлы
- Используйте
@class
, если можете использовать@class
- Добавляйте как можно меньше в файл PCH
- Очистить неиспользуемые классы
Ссылка: