mirror of
https://github.com/amadvance/snapraid.git
synced 2026-10-26 02:49:02 -04:00
Review manpage about memory size
This commit is contained in:
parent
529226087a
commit
eb5ac437b2
5 changed files with 51 additions and 21 deletions
19
TODO
19
TODO
|
|
@ -5,6 +5,25 @@ This is the list of TODO items for SnapRAID.
|
|||
|
||||
- Minor
|
||||
|
||||
* Check how to reduce memory occupation using smaller memory block.
|
||||
We can theoreticallty reduce the memory occupation from 28/36 to
|
||||
17 bytes. 16 for the hash and 1 for the type.
|
||||
We can store the parity_position<->file,pos relation using some form of binary tree,
|
||||
and then drop completely blockarr, and the extra data in memory_block.
|
||||
A simpler simplification is to convert, blockarr to a parity_position->file,pos
|
||||
relation, removing the file pointer inside the block.
|
||||
|
||||
struct node {
|
||||
uint32 parity_pos /* parity position */
|
||||
file* file; /* pointer at the file */
|
||||
uint32 offset; /* position in the file */
|
||||
uint32 count; /* number of sequential blocks */
|
||||
void* left_by_pp; /* tree by parity_pos */
|
||||
void* right_by_pp;
|
||||
void* left_by_fp; /* tree by file,offset */
|
||||
void* right_by_fp;
|
||||
};
|
||||
|
||||
* Restore ownership and permissions, at least in Unix.
|
||||
|
||||
* Restore directory timestamps.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue