Въпреки стремителния възход на услугите с генеративен изкуствен интелект, традиционните инструменти за редактиране на изображения като Photoshop все още доминират в творческата индустрия. Дотолкова, че Microsoft, която сега се е съсредоточила основно върху облачните услуги и AI моделите, работи усилено, за да намери нови начини да направи базираните на Windows приложения по-бързи.
Благодарение на тясното сътрудничество с Adobe инженерите на Microsoft значително са подобрили производителността на някои операции на Photoshop. Photoshop е голямо, нативно десктоп приложение, написано на C++ и компилирано с компилатора Visual C++ на Microsoft в Windows, поради което Microsoft се фокусира върху MSVC в опит да извлече допълнителна производителност от едно от най-масово използваните приложения за редактиране на изображения в света.
Microsoft обясни, че съвместната работа е ориентирана към реални сценарии на клиентите, включващи операции, изискващи интензивно използване на процесора. Понастоящем множество сложни работни натоварвания, свързани с обработката на изображения, се разглеждат, като в някои случаи се „ускоряват“, от графичната карта. Въпреки това някои чувствителни към латентността задачи, като например бързата реакция на четката, въвеждането на щрихи и операциите за отваряне на файлове, все още зависят в голяма степен от суровата производителност на процесора.
Екипът от специалисти е проучил нови практически начини за подобряване производителността на Photoshop по време на компилирането. Първо, те са активирали режима за компилиране „peak-performance“ на MSVC, който е предназначен за създаване на високооптимизирани двоични файлове в Windows.
След това те са експериментирали с оптимизация, управлявана от профили, за да оптимизират допълнително изпълнимите файлове. PGO използва данни, събрани от тестовите стартирания на двоичните файлове .exe и .dll, за да отрази по-добре моделите на използване в реалния свят и да подобри производителността. Въпреки това инженерите установиха, че PGO не е идеален за работния процес на разработка на Photoshop, тъй като добавя допълнителна сложност към процеса на изграждане.
След като опитаха - и се провалиха - с PGO, инженерите се обърнаха към базираните на образци оптимизации, базирани на профили, като потенциална алтернатива. За разлика от традиционната PGO, SPGO замества данните, събрани от „представителни“ работни натоварвания, с образци за производителността на хардуера, събрани от действителни двоични файлове. SPGO също така е по-гъвкава по отношение на събирането на данни, като позволява анализа на разнообразен набор от тестови и производствени машини, и може да осигури типичен ръст на производителността от около 5% до 15%.
SPGO също така се оказа по-съвместим с проектантската среда на Adobe. Чрез комбиниране на режима за максимална производителност на MSVC със SPGO екипите успяха да подобрят производителността на Photoshop с 20% на x64 Windows системи и с 13% на Arm.









Коментари
Моля, регистрирайте се от TУК!
Ако вече имате регистрация, натиснете ТУК!
Няма коментари към тази новина !
Последни коментари