The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"bash-скрипт для параллельной обработки файлов или других дан..."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [ Отслеживать ]

"bash-скрипт для параллельной обработки файлов или других дан..."  
Сообщение от opennews (ok) on 10-Янв-09, 17:36 
Небольшой обзор (http://drakulavich.blogspot.com/2009/01/ppss.html) возможностей PPSS (http://code.google.com/p/ppss/) (Parallel Processing Shell Script), shell-скрипта для параллельной обработки файлов или других данных. Скрипт определяет количество доступных процессоров и запускает для каждого из них отдельный поток. PPSS будет полезен в случае, когда обработка разделена на отдельные задачи, которые могут выполняться параллельно. Например, кодирование WAV-файлов в mp3, загрузка большого количества файлов, пакетная обработка изображений и т. д.

URL: http://drakulavich.blogspot.com/2009/01/ppss.html
Новость: http://www.opennet.me/opennews/art.shtml?num=19705

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "bash-скрипт для параллельной обработки файлов или других дан..."  
Сообщение от pavlinux (ok) on 10-Янв-09, 17:36 
О, вспомнилось....
Мож кому пригодиться, перекодирование фоток из Canon RAW (EOS 40D) в JPEG  

Запускать в папке с RAW_aми, создаст, если нет, каталог ./CONVERTED и туда перекодирует все RAW_ы.

#!/bin/bash

MOD=$(( $k % 4 )); # 4 - число ядер

DCRAW='/usr/bin/dcraw -w -q 3 -c '
CJPEG='/usr/bin/cjpeg -quality 100 -dct float -maxmemory 262144 '
DIR='./CONVERTED'
k=0
m=0

   if [ ! -d $DIR ]
     then
          mkdir $DIR
                if [ $? -ne 0 ]
                   then
                        echo 'Cannot create directory'
                        exit 1;
                fi
   fi

   for i in `ls -1 *.[cC][Rr]2`
       do
          k=$(( $k + 1 ));
          m=$(( $m + 1 ));
          echo "Process [ $m ] sub [ $k ]";

             if [ "$k"  -gt 15 ]
               then
                    sleep 40;
                    k=0;
             fi
          NEW_NAME=`/usr/bin/dcraw -v -i $i | /bin/grep Timestamp | /bin/awk '{print $4"."$3"."$6"-"$5}'| tr ':' '.'`
      
          taskset -c $MOD $DCRAW $i | $CJPEG -outfile $DIR/$NEW_NAME.jpg &
  done

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "bash-скрипт... дарю %) строку"  
Сообщение от Andrey Mitrofanov on 10-Янв-09, 22:17 
>#!/bin/bash

CPUS="`egrep "^processor[^a-z]+:" </proc/cpuinfo |wc -l`"

>MOD=$(( $k % 4 )); # 4 - число ядер

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "bash-скрипт... дарю %) строку"  
Сообщение от pavlinux (ok) on 10-Янв-09, 22:31 
Да на здоровье! Просто у компа есть привычка, не менять кол-во ядер, без апгрейда :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "bash-скрипт для параллельной обработки файлов или других дан..."  
Сообщение от rstone on 11-Янв-09, 11:50 

>for i in `ls -1 *.[cC][Rr]2`  

for i in *.[cC][Rr]2

А то  будут проблемы с пробелами .

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру