Recent

Author Topic: Parallel archiver 1.86  (Read 7429 times)

aminer

  • Hero Member
  • *****
  • Posts: 956
Parallel archiver 1.86
« on: May 24, 2013, 01:13:37 am »

Hello,

Parallel archiver was updated to version 1.86, i have rewrote LZMAStream.pas and
LZ4Stream.pas and LZOStream.pas to be faster and to use less memory.

You can download Parallel archiver that is
very stable from:

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


Thank you,
Amine Moulay Ramdane,
 

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver 1.86
« Reply #1 on: May 25, 2013, 10:58:13 pm »

Hello,

Note please that my Parallel archiver and my Parallel compression library are compatible with Freepascal version 2.2.0+ and up and Lazarus and also with Delphi 7 to 2007,  i didn't ported it to Delphi 2010 or Delphi XE.

I have installed Delphi XE4 and i didn't like it , so i will stay
with FreePascal and Lazarus.


Thank you,
Amine Moulay Ramdane.

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver 1.86
« Reply #2 on: May 25, 2013, 11:03:30 pm »

Hello,

I have noticed that Paraller archiver with Delphi 7 to 2007
is very slow when you are working with in-memory archives cause
of some bugs with Delphi, this problem doesn't show with disk archives
and it doesn't show with Freepascal or Lazarus.


So I will advice you to use Freepascal or Lazarus.


Thank you,
Amine Moulay Ramdane.

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver 1.86
« Reply #3 on: May 27, 2013, 06:35:40 pm »

Hello,

If you need to use my Parallel archiver as a database server from the hardisk that serves clients from the network, no need for you to use a TCP/IP client server mechanism, all you have to do is compress your files as archives
(to serve the files as compressed archives to be able to lower the load on your
server and to boost the response time of your server) and store them in your archive , after that you have to use the Distributed Reader-Writer Mutex(you will find it on my website) inside your application to protect the write access to your archive etc., that's all.

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




Thank you,
Amine Moulay Ramdane. 

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver 1.86
« Reply #4 on: May 27, 2013, 06:42:02 pm »

I wrote:
>If you need to use my Parallel archiver as >a database server from the hardisk that >serves clients from the network, no need >for you to use a TCP/IP client server >mechanism

I mean , no need for you to use a TCP/IP client server
mechanism between the local process (that
you will start on your server for each client) and Parallel archiver, but
you have to use a TCP/IP client server mechanism between the local process that
you will start on your server and the remote process of your client.



Thank you,
Amine Moulay Ramdane.


aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver 1.86
« Reply #5 on: May 27, 2013, 07:01:26 pm »

Hello,

When you  use my Parallel archiver
as a database server or a hashtable database server from the
hardisk, it will have a O(1) complexity and fast access on all
the following methods: 
 DeleteFiles() , ExtractFiles() , Extract() ,  GetInfo() , AddFiles() , Test() , so Parallel
archiver is  extremely fast with this O(1) complexity, faster than a database like MySQL or SQLLite that have a complexity of log(n) i think.

So as i said to be able to use my Parallel
archiver as a database or hashtable from the hardisk, no need for you to use a TCP/IP client-server
mechanism between the local process (that
you will start on your server for each client) and Parallel archiver, but
you have to use a TCP/IP client-server mechanism between the local process that
you will start on your server and the remote process of your. And  you have to compress your files as archives
(to serve the files as compressed archives to be able to lower the load on your
server and to boost the response time of your server) and store them in your archive , after that you have to use the Distributed Reader-Writer Mutex that i wrote(you will find it on my website) inside your application to protect the write access to your archive etc., that's all.


Thank you,
Amine Moulay Ramdane.



ideabrush

  • New Member
  • *
  • Posts: 24
Re: Parallel archiver 1.86
« Reply #6 on: May 31, 2013, 10:44:46 am »
Hi Amine,

  I tried to use your parchiver. First tried using Delphi (after XE). I first manually put a conditional define 'Delphi' in the Project Option. Then I got errors of NativeInt being not compatible with LongInt when compiling. Replaced LongInt with NativeInt to get it compiled but it gives loading index error when I tried running of a few of the test programs you included. You mentioned you do not really support Delphi XE+ so I think I'll give up on that.

 Switched to Lazarus 1.1 (using CodeTyphon 4.2). When I tried running "Test_pbzip.pas", I got these compilation errors:

parallelhashlist.pas(155,30) Hint: Parameter "AUserData" not used
parallelhashlist.pas(155,56) Hint: Parameter "AStr" not used
parallelhashlist.pas(267,16) Error: use of NEW or DISPOSE is not possible for untyped pointers
parallelhashlist.pas(591,46) Error: Wrong number of parameters specified for call to "NodeIterate_CollectNodes"
parallelhashlist.pas(568,11) Hint: Found declaration: procedure NodeIterate_CollectNodes(Pointer;PPHashNode);
parallelhashlist.pas(783,25) Error: Illegal qualifier
parallelhashlist.pas(783,25) Hint: may be pointer dereference is missing
parallelhashlist.pas(783,25) Fatal: Syntax error, ")" expected but "identifier LEFT" found
 
  Is there anything I need to do in Lazarus before I can run your test programs? Thanks a lot!

Nelson

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver 1.86
« Reply #7 on: May 31, 2013, 03:28:18 pm »


Hello,

Try the -Sd (Delphi) switch.

I have compiled it with Lazarus and Freepascal and Delphi7 to Delphi 2007 and it  is working correctly.



Thank you,
Amine Moulay Ramdane.




 

BigChimp

  • Hero Member
  • *****
  • Posts: 5740
  • Add to the wiki - it's free ;)
    • FPCUp, PaperTiger scanning and other open source projects
Re: Parallel archiver 1.86
« Reply #8 on: May 31, 2013, 05:52:18 pm »
What about adding something like (air code)
Code: [Select]
{$ifdef fpc}
  {$mode delphi}
{$endif}
to the code... so people don't need to remember to add that switch...
Want quicker answers to your questions? Read http://wiki.lazarus.freepascal.org/Lazarus_Faq#What_is_the_correct_way_to_ask_questions_in_the_forum.3F

Open source including papertiger OCR/PDF scanning:
https://bitbucket.org/reiniero

Lazarus trunk+FPC trunk x86, Windows x64 unless otherwise specified

ideabrush

  • New Member
  • *
  • Posts: 24
Re: Parallel archiver 1.86
« Reply #9 on: June 01, 2013, 12:54:26 pm »
Hi Aminer,

  Thanks for your hint. In Project Options->Compiler Options->Parsing, I found "Syntax mode (-M, {$MODE}", and after choosing "Delphi (-Mdelphi)" it compiles fine.
 
  Another suggestion: it'd be nice to have the test programs in a separate folder and include also a Lazarus project file instead of just a plain old Pascal program file (because when you open that .pas file, Lazarus asks you what type of project you'd like to create out of this file). That would be much easier for new users to get started I believe.

  And thanks for the hard work you put into your libraries. Hope they get better and better.

  And thanks to BigChimp for his suggestion.

Nelson

aminer

  • Hero Member
  • *****
  • Posts: 956
Re: Parallel archiver 1.86
« Reply #10 on: June 06, 2013, 11:44:49 pm »

Hello,

I have updated Parallel archiver to version 1.88, i have corrected a problem so that Parallel archiver is  multithreaded safe now.


You can download Parallel archiver 1.88 from:

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


Thank you,
Amine Moulay Ramdane.


 

TinyPortal © 2005-2018