Jump to content

    
Sign in to follow this  
zombi

BMP to PNG or JPG

Recommended Posts

7 minutes ago, jcxz said:

Если 22 секунды тратились из-за множества дисковых операций с файлами и тормоза именно из-за них, то RAM-диск как раз и поможет в этом случае.

И почему "дорогой"? Скопировали сколько влезет (несколько гиг), обработали, сохранили скопом на обычный диск, дальше - следующий набор файлов. 

А можно и распараллелить процессы обработки и копирования на RAM-диск и с него. Будет ещё быстрее.

там данные маленькие - реально в L1 кеш процессора влезут, а тормоза, ИМХО, из-за того, что старт программы в винде влечет запуск тучи всяких сервисов, и рам тут не поможет. Если взять исходники того, что я упоминал (а они опенсорсные) и воткнуть там вызовы друг за другом, то летать должно реально раз так в 20 быстрее, упираясь во время закачки и выкачки на диск, ибо если данные в первом кеше, то все работает почти на тактовой процессора, деже если было написано криворукими программистами.

Share this post


Link to post
Share on other sites
1 минуту назад, a123-flex сказал:

Другой вопрос, можно ли получить все это, не разрабатывая собственное ПО, а скриптом ОС, на коленке.

Я думаю несложно написать например 3 батника: один копирует на RAM-диск, другой - запускает обработку, 3-й - копирует с RAM-диска. Они должны быть довольно простые.

Share this post


Link to post
Share on other sites
2 minutes ago, a123-flex said:

Другой вопрос, можно ли получить все это, не разрабатывая собственное ПО, а скриптом ОС, на коленке.

в линуксе pnmtojpeg всего-то 18 кбайт, так что думайте сами решайте сами. Яб на месте ТС нашел бы свободный дисковый раздел, постивил линь и решил бы эту задачу за несколько часов, всяко это быстрее 5 дней было бы. Линукс сейчас очень дружелюбный. Рекомендую какую-нибудь бубунту для этого.

Share this post


Link to post
Share on other sites
2 минуты назад, iiv сказал:

там данные маленькие - реально в L1 кеш процессора влезут, а тормоза, ИМХО, из-за того, что старт программы в винде влечет запуск тучи всяких сервисов, и рам тут не поможет.

Так ACDSee под винду, насколько помню, умеет пакетное конвертирование всех файлов в директории. Запускать много раз его не надо для этого.

Share this post


Link to post
Share on other sites
5 минут назад, jcxz сказал:

Я думаю несложно написать например 3 батника: один копирует на RAM-диск, другой - запускает обработку, 3-й - копирует с RAM-диска. Они должны быть довольно простые.

Забыл уже времена дос, и как просто там делался рам-диск)

А в винде рам диск делать также просто как в досе, честно ни разу не пробовал ?))

Share this post


Link to post
Share on other sites
Just now, jcxz said:

Так ACDSee под винду, насколько помню, умеет пакетное конвертирование всех файлов в директории. Запускать много раз его не надо для этого.

я не в курсе, что под виндой, если так, то да, вы правы. Если так, то там в чем-то другом тормоза, и, скорей всего не обходимые простым методом.

Share this post


Link to post
Share on other sites
1 минуту назад, a123-flex сказал:

А в винде рам диск делать также просто как в досе, честно ни разу не пробовал?))

Ещё проще. У меня вот сейчас из 24гиг 8 отданы под RAM-диск. И все кеши браузеров и папки TEMP - все на него перенаправлены.

Даже фильмы торрентом на него скачиваю иногда. :wink:

Share this post


Link to post
Share on other sites
Только что, jcxz сказал:

Ещё проще. У меня вот сейчас из 24гиг 8 отданы под RAM-диск. И все кеши браузеров и папки TEMP - все на него перенаправлены.

Ммм. Sounds good.

Share this post


Link to post
Share on other sites
5 minutes ago, jcxz said:

Я думаю несложно написать например 3 батника: один копирует на RAM-диск, другой - запускает обработку, 3-й - копирует с RAM-диска. Они должны быть довольно простые.

я все-таки надеюсь, что программеры ACDSee не на столько тупые, что побайтно читают файлы, и время зачитывания тут роли не должно играть, если читать по 30кбайт. Те же 30МБайт ведь какой-нибудь ZIP за секунду наверное архивирует? Я не вкурсе, но предполагаю, что так.

Share this post


Link to post
Share on other sites

Недавно переустанавливал винду, так что ACDSee у меня сейчас нет, а ставить лень. Но есть Irfan. Запустил его, и там тоже оказывается есть "Batch Conversion". Он конвертнул нормально всю директорию из GIF в PNG.

Share this post


Link to post
Share on other sites
6 minutes ago, jcxz said:

Недавно переустанавливал винду, так что ACDSee у меня сейчас нет, а ставить лень. Но есть Irfan. Запустил его, и там тоже оказывается есть "Batch Conversion". Он конвертнул нормально всю директорию из GIF в PNG.

может это TCу и поможет!

Share this post


Link to post
Share on other sites

У меня в одном директории 1 млн файлов.

Все проги включая виндовский проводник "сходят с ума" когда просто пытаются вычитать все имена файлов в папке.

Тупят просто жуть.Дождаться пока они хоть что-то на экране покажут - просто не реально.

 

Задачу решил. На Delphy (он мне понятней) написал консольное приложение.

Конвертирует в четыре-пять раз быстрее чем ACDSee.

1 лям файлов примерно за 100 мин.

 

Но возникла новая проблема. Удалить все "старые BMP".

На удаление папки с 1 млн файлов проводник тратит столько времени что кажется конвертирование идёт быстрее :biggrin:

И не дай бог запустить конвертирование и удаление параллельно! 

 

Вопрос: как быстро удалить с диска всю папку с 1 млн файлов?

Share this post


Link to post
Share on other sites

Создал сейчас 1031 bmp-файл на RAM-диске (форматом 160*96*24). Конвертнул их Irfan-ом за ~9 секунд. Без всякого программирования. На моём заурядном i5-3570.

Share this post


Link to post
Share on other sites
Quote

Все проги включая виндовский проводник "сходят с ума" когда просто пытаются вычитать все имена файлов в папке.


Тупят просто жуть.Дождаться пока они хоть что-то на экране покажут - просто не реально.


Индексирование диска правильные "мышевозы-виндоводы" не задумываясь отключают.

Quote

Но возникла новая проблема. Удалить все "старые BMP".

На удаление папки с 1 млн файлов проводник тратит столько времени что кажется конвертирование идёт быстрее :biggrin:

И не дай бог запустить конвертирование и удаление параллельно! 

Вопрос: как быстро удалить с диска всю папку с 1 млн файлов

Открыть консоль и ввесть две командыЖ

cd "диск:/имя_каталога_с_bmp-хами"

del *.bmp

Edited by Obam

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this