Recent

Author Topic: Parallel archiver using my ParallelZlib..  (Read 17696 times)

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #15 on: February 16, 2013, 05:50:27 pm »

Hello,

PZArchiver was updated to version 1.02 , i have corrected
a bug and now it is working correcrtly , you can download it from:

http://pages.videotron.com/aminer/



Thank you,
Amine Moulay Ramdane.

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #16 on: February 16, 2013, 06:02:26 pm »

Hello,

Question:

Where was the bug ?

Answer:

In the ExtractFiles() method, if the destination directory
doesn't exist and it can not be created it must inform you
of that and it must halt after that etc....

I have wrote it like this:

--

if not directoryexists(DestDirectory)
 then
 begin
  if not CreateDir(destdirectory)
  then
   begin
  writeln('Problem creating the destination directory  [',DestDirectory,']...');
 halt;
  end;
 end
else
 begin
  if destdirectory[length(destdirectory)]='\'
   then  destdirectory:=copy(destdirectory,1,length(destdirectory)-1);
  end;

--


Thank you,
Amine Moulay Ramdane.






aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #17 on: February 16, 2013, 09:16:58 pm »

Hello,

PZArchiver was updated to version 1.03 , i have simplified
the constructor, now you have just 3 parameters to
pass: the archive name, the hashtable size, and the number of cores, and i have corrected a minor bug so that it works
with a directory name like '.' and '.\' that you pass to FindFile.

You can download PZArchiver version 1.03 from:

http://pages.videotron.com/aminer/



Thank you,
Amine Moulay Ramdane.

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #18 on: February 18, 2013, 11:48:13 pm »
On 2/18/2013 8:56 AM, bob wrote On Friday, February 15:
>How much faster does it operate when you go from using
> 1 thread to using 2 threads?


My parallel archiver is using Parallel Zlib so it's  fast, so since
Parrallel Zlib is fast , the P (parallel part) of the Amdahl equation is much smaller than with Parallel Bzip, so since it's using a lot the memory and the harddisk also, it gives 2.5x speed with 4 threads on 4 cores. And thats not so bad since we are speeding up the things 2.5x times, ParallelBzip is mush slower, so the P part is much bigger than with
Parallel Zlib , and it gives over 3.4x speed with Parallel Bzip.



Thank's,
Amine Moulay Ramdane.



 

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #19 on: February 20, 2013, 02:17:57 am »

Hello

Parallel archiver was updated to version 1.0 , i have enhanced the Addfiles() method, and corrected a bug, and i have stress tested it and it didn't show a problem, you can be more
confident to use it now...

You can download PZArchiver version 1.06 from:


http://pages.videotron.com/aminer/



Thank's
Amine Moulay Ramdane.



aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #20 on: February 20, 2013, 02:32:15 am »

Hello,

I have played with the 7zip graphical archiver here:

http://www.7-zip.org/download.html

and i have noticed that when for example you drag a file to add it to the archiver , 7zip only ask you a question like: "are you sure you want to copy the file ?", and that's not so good, you have to tell to the user that the file already exist or not and if the file inside the archive is newer or older than the file inside the archive, and ask after that the user if he wants to copy the file, and that is the way that i have enhanced my AddFiles() method, and it's working correctly. Try it yourself.



Thank's,
Amine Moulay Ramdane.




aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #21 on: February 20, 2013, 02:43:10 am »

Hello,

I mean , i have noticed that and i have noticed that when for example you drag a file THAT ALREADY EXIST inside the archive,  to add it to the 7zip graphical archiver , 7zip only ask you a question like: "are you sure you want to copy the file ?", and that's not so good, you have to tell to the user that the file already exist or not and if the file inside the archive is newer or older than the file inside the archive, and ask after that the user if he wants to copy the file, and that is the way that i have enhanced my AddFiles() method, and it's working correctly. Try it yourself.



Thank's,
Amine Moulay Ramdane.

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #22 on: February 20, 2013, 03:08:01 am »

Hello,

What's is next on your todo list Amine ?


I don't have Linux installed, so i have to install it to be able
to port my Parallel archiver to Linux, and  and Mac OSX (x86),
and i thing it's very easy to port to Linux(x86) and Max OSX (x86)
and i want also to add Parallel AES encryption, and i want
to add support for memory streams, and i want you also
to be able to use it as a hashtable from the hardisk since
i am using a hashtable as an index that stores the key file names
and there file position, and i want also to add Parallel Gzip
and parallel LZMA and Parallel LZ to my parallel archiver,
and after that i want somebody in the Lazarus community
to implement a graphical user interface with drag and drog support to parallel archiver, so that we will have a graphical
user interface for Windows , Linux, and Mac OS X(x86).



And that's all.


Amine Moulay Ramdane.






aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #23 on: February 20, 2013, 03:13:46 am »


Also i will add self extracting archives to my parallel archiver.

It will only be supported for Windows 32 bit and 64 bit.



Amine Moulay Ramdane. 

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #24 on: February 20, 2013, 03:34:16 am »

Question:

Why you don't want to support file renaming into your Parallel archiver  as is doing 7zip ?

Answer:

Cause i have played with the file renaming of 7zip and it's not
so efficient , cause when your archive gets bigger you have
 to move the files from one position  the other
inside your parallel archive, and that too slow and inefficient.


So i will not support it, as was doing WinZip.


Thank's
Amine Moulay Ramdane.


aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #25 on: February 20, 2013, 03:39:47 am »


But if you want me to do support file renaming, that's very easy to do...



Amine Moulay Ramdane.

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #26 on: February 20, 2013, 03:47:07 am »

Hello,

Question:

Why did you avoid to use the zip format or the 7zip format or someting like that ?


Answer:

I wanted you to use my Parallel archiver format, and
since it will be ported to 3 platforms: Windows(x86), Linux(x86) and MacOSX(x86) and with a graphical interface too (i hope), that's a good idea also.



Thank you,
Amine Moulay Ramdane.







lainz

  • Guest
Re: Parallel archiver using my ParallelZlib..
« Reply #27 on: February 20, 2013, 04:29:04 am »
Hi, I'm interested on .7z format (or the faster .zip), and using that format like using Zipper unit that comes with Lazarus.


Also you can create a Wiki page for your components? For example, I've created a Wiki for my component ( http://wiki.lazarus.freepascal.org/FileAssociation ) and It has received some downloads, maybe the people get interested if they can find documentation in the Wiki :)
« Last Edit: February 20, 2013, 10:19:03 am by lainz »

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver using my ParallelZlib..
« Reply #28 on: February 20, 2013, 04:52:48 am »


Hello,


You will be able to use my Parallel archiver as a hashtable
from the hardisk with 0(1) access, you can for example
stream your database row with my ParallelVarFiler into
a memory stream or into a string, and store it into
with my Parallel archiver into an  archive, and after
that your can access your rows into the hardisk as
a hashtable with O(1) access, you can use it
like this as a database if you you have an id key that
you want to map to a row that will be a good idea to
use my Parallel archiver as a hashtable.

I will add an MREW to my Parallel archiver soon, so
that you can parallelize the read access.
 

Thank you,
Amine Moulay Ramdane.










 

lainz

  • Guest
Re: Parallel archiver using my ParallelZlib..
« Reply #29 on: February 20, 2013, 05:00:11 am »
Hi, my question is more simple =)

How I can easily extract a .zip file to a folder with your lib? And see if there is an error when decompressing the files (an exception). That's all I need.

Thanks.

 

TinyPortal © 2005-2018