Live Business Chat
2013 May 20, 01:08:17 am *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Some accounts got accidentally deleted by anti-spam software during a spammer attack on this forum. Please re-register. If you have trouble, contact badon or tamo42 in the chat. This is a friendly non-profit discussion group about making money. You won't be able to see all forums at first. You have to register to see more forums. Click the "NOTIFY" button every chance you get to receive instant alerts about new information.
 
   Home   Help Search Calendar Login Register  
Pages: « 1 2 3 4 5 6 7 8 9 10  All   Go Down
  Print  
Author Topic: Release note of v1.1.7 tree  (Read 6515 times)
0 Members and 1 Guest are viewing this topic.
persicum
Serious Business
***

Karma: +2/-1
Offline Offline

Posts: 122


« Reply #90 on: 2011 Feb 27, 09:55:11 am »

Dando Real
PAR2 is an ordinary vehicle, but PAR3/RSC32 is a hyperspace warp starship, don't use the latter to go to country cottage. =))) Swapping is warping, and FFT is a magic dust
Logged
Yutaka Sawada
Moderator
Mogul
*****

Karma: +8/-0
Offline Offline

Posts: 311


« Reply #91 on: 2011 Mar 01, 07:54:17 pm »

from persicum, 2011 Feb 27, 10:35:33 PM ;
Quote
If you use FileWrite() to write outside a file never do that because this doesnot work for files larger than 30G.

 I am not sure, but FileWrite() seems to be a command of Delphi. I use WriteFile() Win32API by VC. Because I can not treat so large 30GB over files, I never tested that problem.

 I don't know, hyperspace warp by startship is well-known technology... As easy simile, RSC32 is like an air-plain. It is faster than cars, but you need to go air-port at first. Swapping to temp file is same as going to air-port. The total time depends on, how far you want to go.
Logged
persicum
Serious Business
***

Karma: +2/-1
Offline Offline

Posts: 122


« Reply #92 on: 2011 Mar 02, 12:22:48 am »




Quote
I use WriteFile() Win32API by VC
Everythink is OK with WriteFile() WinAPI.

But for very large files you should allocate a disk space first by using Seek() (I don't know how this winAPI is called exactly), then

BOOL WINAPI SetEndOfFile(
  __in  HANDLE hFile
);
Logged
Dando Real
Dreamer
*

Karma: +0/-0
Offline Offline

Posts: 9


« Reply #93 on: 2011 Mar 10, 04:20:15 pm »

Hi Yutaka, I read your message only now.

Quote
I made some debug version to test multi-thread. They are public at "Debug version for test" topic on this forum. Please test them, and compare which is fast for when.

OK, I'll try to do some tests

Quote
"read/write all at once" style IO is used for FFT. For example, FFT requires a set of data [ A ][ B ][ C ]. RSC32 may rearrange file data by using temporary file. The data of source file is like; [ A ][ A ][ A ][ B ][ B ][ B ][ C ][ C ][ C ]

I read a little about Galois Fields. You use p = 2^16 + 1 and you are bounded to an FFT of dimension 2^16, on blocks of 16 bits. So you have to compute many times the FFT.
Why not use instead GF(2^N), there is a library to work on fields of characteristic 2. You can then use FFT of greater order, requiring less (slow) HD seeking.
Otherwise, as GF(p) there is p = 2^64 - 2^32 + 1 which allows an FFT up to 2^32, without divisions, as described here:
http://www.craig-wood.com/nick/armprime/math.html

Quote
I think the following. The relative FFT speed/efficiency is (Data_Buffer_Size)/(Data_Buffer_Size+Recovery_Buffer_Size). Normally it is about 80-90%.

But you want to use say 256M RAM for Data_Buffer_Size and say 8G RAM for Recovery_Buffer_Size,
so FFT usability will be 1/32. So this slowdown recovery creation in 32 times as compared with the temp file case.

persicum,
sorry I don't understand why use 256 MB for data and 8GB for recovery, instead for example of 4 GB each.
And why should FFT slowdown recovery instead of speeding it up?

Quote
Why you are so hate a swapping?

The problem is not swapping itself - it is that I'm bound on low free space, I fullfill whatever HD I buy.
Logged
persicum
Serious Business
***

Karma: +2/-1
Offline Offline

Posts: 122


« Reply #94 on: 2011 Mar 11, 12:02:25 am »

Quote
sorry I don't understand why use 256 MB for data and 8GB for recovery, instead for example of 4 GB each. And why should FFT slowdown recovery instead of speeding it up?

PAR2 uses a large buffer only for recovery, does not it? Why use huge buffer for data if they available on HDD? You assume use 4G for data and 4G for recovery, but this would slowdown FFT (4+4)/4 = 2 times.
Logged
persicum
Serious Business
***

Karma: +2/-1
Offline Offline

Posts: 122


« Reply #95 on: 2011 Mar 11, 12:05:05 am »

Quote
p = 2^64 - 2^32 + 1
   
for FFFFFFFF00000001 prime see "Question about your usage of PAR3"
Logged
Dando Real
Dreamer
*

Karma: +0/-0
Offline Offline

Posts: 9


« Reply #96 on: 2011 Mar 11, 01:24:03 pm »

PAR2 uses a large buffer only for recovery, does not it? Why use huge buffer for data if they available on HDD? You assume use 4G for data and 4G for recovery, but this would slowdown FFT (4+4)/4 = 2 times.

Because if problem is random seeking, you load as much as possible by sequential ( relatively fast ) reading from files to memory, then you can have a fast random access to data

What I don't understand is what makes the FFT slow, you mean the time needed to load data in memory?
Logged
persicum
Serious Business
***

Karma: +2/-1
Offline Offline

Posts: 122


« Reply #97 on: 2011 Mar 13, 03:59:20 am »

Quote
Because if problem is random seeking, you load as much as possible by sequential ( relatively fast ) reading from files to memory, then you can have a fast random access to data

Seeking or sequential reading does not matter until you read [A][][][][][] and need only [A] but [][][][][][] leave HDD cache.

Quote
What I don't understand is what makes the FFT slow, you mean the time needed to load data in memory

I meant that instead say FFT([AAAAAAAAAAAAAABB]) you assume to make FFT([AABB]) seven times.
But first FFT utilizes 16 symbols, but seven last FFTs utilize 7*4=28 symbols. So slowdown will be 28/16=1.75 time.

I may making a mistake here, but I can say definitely - Yutaka could not implement PAR3 w/o swapping original data into strips as RSC32 already does. So you need a Solid State Drive or Hybrid HDD+SDD rather than a lot of RAM and 64-bit which cannot help to PAR3, only SDD can speedup. =)))

As to FFFFFFFF00000001 it is cool prime but will slowdown PAR3 two times under 32-bit environment. Four 32-bit mults/64-bit_data_access will slowdown two times. But under 64-bit it would be a very cool choice.
Logged
persicum
Serious Business
***

Karma: +2/-1
Offline Offline

Posts: 122


« Reply #98 on: 2011 Jun 30, 05:30:47 am »

Dondo Real

Quote
Persicum, I have already seen your utility in the past. But, as you admit, it is not efficient with small recovery, and needs a lot of hd temp space.As for now, I prefer something which is slower in generating, and faster on recovering, because the former is made only once, the second can happen multiple times

See benchmark on the RSC32 forum. With a second physical non-RAIDed HDD for swapping the speed of RSC32 repairing (regardless to data and recovery block count) is the same as MultiPAR2 single byte repairing (depends strongly on data block count).
Logged
Pages: « 1 2 3 4 5 6 7 8 9 10  All   Go Up
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!
Page created in 0.068 seconds with 18 queries.