Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: ImageMagick и нагрузка на ЦП.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Vinyl
Отправлено: 23 Июля, 2012 - 07:30:03
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 645
Дата рег-ции: Янв. 2012  
Откуда: Армавир, Краснодарский край


Помог: 15 раз(а)




Доброго времени. Поставил ImageMagick на VPS (проц. 900 Mhz, память гарант./макс. - 512/256 Мб, OpenVZ). При выполнении вот такой несложной операции:
PHP:
скопировать код в буфер обмена
  1.  
  2.         $im = new imagick($thumbnail);
  3.         $im->cropThumbnailImage( 100, 100 );
  4.         $im->roundCorners(5, 5);
  5.        
  6.         $canvas = new Imagick();
  7.         $canvas->newImage(100, 100, new ImagickPixel("white"));
  8.         $canvas->compositeImage($im, $im->getImageCompose(),  0,  0);
  9.         $canvas->writeImage($thumbnail);
  10.        
  11.         $imb = new Imagick($image);
  12.         $width = $imb->getImageWidth();
  13.        
  14.         if($width>882)
  15.         {
  16.                 $imb->adaptiveResizeImage(882,0);
  17.         }
  18.        
  19.         $height = $imb->getImageHeight();
  20.        
  21.         if($height>600)
  22.         {
  23.                 $imb->adaptiveResizeImage(0,600);
  24.         }
  25.        
  26.         $imb->writeImage($image);
  27.  

и размере изображения ($image и $thumbnail, до выполнения скрипта это одинаковые изображения) 1024x768 проц 7-8 секунд загружен на 100%, а при размере исходной картинки в 4272x2848 проц загружен на 100% до 18 секунд. Это нормально?
На сервере Debian 6, IM ставил с репозитория, стоит LAMP. Может в конфигах чего подправить нужно? На оф.сайте IM ничего не нашел. Буду благодарен за помощь.


-----
Пессимисты пользуются die(), оптимисты - exit()
 
 Top
EuGen Администратор
Отправлено: 23 Июля, 2012 - 09:51:01
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)






-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Vinyl
Отправлено: 23 Июля, 2012 - 13:59:33
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 645
Дата рег-ции: Янв. 2012  
Откуда: Армавир, Краснодарский край


Помог: 15 раз(а)




EuGen, спасибо, но не помогло. Уже без openmp, а время выполнения то же.


-----
Пессимисты пользуются die(), оптимисты - exit()
 
 Top
EuGen Администратор
Отправлено: 23 Июля, 2012 - 14:59:51
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Тогда, вероятно, дело в самой библиотеке. Попробуйте http://www[dot]multipole[dot]org/discour[dot][dot][dot]?f=1&t=20130 - но не уверен, что это поможет в Вашем случае.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Vinyl
Отправлено: 23 Июля, 2012 - 15:22:24
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 645
Дата рег-ции: Янв. 2012  
Откуда: Армавир, Краснодарский край


Помог: 15 раз(а)




EuGen, не помогло. Может, правда сервер слабый?

Время выполнения:
1280х800 -> 20.4 сек.
4272x2848 -> 31.9 сек.

Чем можно сам сервер протестить? У меня в тарифе четко процессор не прописан, где-то в факе нашел, как рассчитать, кому сколько процессора достается, получил ~900 MHz.
Хостер vps.ua, тариф VZ-256


-----
Пессимисты пользуются die(), оптимисты - exit()
 
 Top
EuGen Администратор
Отправлено: 23 Июля, 2012 - 15:30:25
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Vinyl
Теоретически "слабый сервер" означает, что увеличение его производительности - это малоэффективное так называемое "решение в ширину" (ведь если представить, что Вам потребуется запустить, к примеру, уже 3-5 процессов, аналогичных обсуждаемому, то увеличение мощности в 2 раза не спасет).
Возможно, стоит увеличить мощность, но это не панацея. Кроме того, можно попытаться найти альтернативу используемой библиотеке (честно признаюсь, делал это так)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Графика в PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB