Re: Zram for FreeBSD
Awesome thanks Sergey. I’ll look through it soon :) On 10/9/16, 11:55 PM, "Sergey Senozhatsky"wrote: >you'd also probably want to look at the older zsmalloc version >(add compaction and migration later, if need be) > >https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/mm/zsmalloc.c?id=refs/tags/v4.0 > >it used to be simpler back then. > > -ss
Re: Zram for FreeBSD
Awesome thanks Sergey. I’ll look through it soon :) On 10/9/16, 11:55 PM, "Sergey Senozhatsky" wrote: >you'd also probably want to look at the older zsmalloc version >(add compaction and migration later, if need be) > >https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/mm/zsmalloc.c?id=refs/tags/v4.0 > >it used to be simpler back then. > > -ss
Re: Zram for FreeBSD
you'd also probably want to look at the older zsmalloc version (add compaction and migration later, if need be) https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/mm/zsmalloc.c?id=refs/tags/v4.0 it used to be simpler back then. -ss
Re: Zram for FreeBSD
you'd also probably want to look at the older zsmalloc version (add compaction and migration later, if need be) https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/mm/zsmalloc.c?id=refs/tags/v4.0 it used to be simpler back then. -ss
Re: Zram for FreeBSD
On (10/07/16 17:30), Cory Pruce wrote: > Cool, I am starting to get a good grasp on what is going on (I’ll probably > need to use FreeBSD’s archive.h as opposed to Linux’s crypto.h). I am trying > to get a hold on what exactly I need to port to FreeBSD. I see that (as Nitin > suggested) zsmalloc is the main brains of handling the objects and that it > creates a fixed amount of sharded “pages” which a compressed (or > uncompressed) actual page can span. I see also that that depends on zpool. zsmalloc doesn't depend on zpool. zpool is an abstraction layer used by zswap. > I will probably find all “dependencies”; however, if one of you could > describe the components used/implemented for this, that’d be awesome. Also, > any linux specific setup/layout details come to mind? there is a whole bunch of hacks that Nitin, Minchan and others used in zsmalloc() to minimize its space consumption (struct page fields re-usage, etc). comments in zsmalloc() can shed some light. -ss
Re: Zram for FreeBSD
On (10/07/16 17:30), Cory Pruce wrote: > Cool, I am starting to get a good grasp on what is going on (I’ll probably > need to use FreeBSD’s archive.h as opposed to Linux’s crypto.h). I am trying > to get a hold on what exactly I need to port to FreeBSD. I see that (as Nitin > suggested) zsmalloc is the main brains of handling the objects and that it > creates a fixed amount of sharded “pages” which a compressed (or > uncompressed) actual page can span. I see also that that depends on zpool. zsmalloc doesn't depend on zpool. zpool is an abstraction layer used by zswap. > I will probably find all “dependencies”; however, if one of you could > describe the components used/implemented for this, that’d be awesome. Also, > any linux specific setup/layout details come to mind? there is a whole bunch of hacks that Nitin, Minchan and others used in zsmalloc() to minimize its space consumption (struct page fields re-usage, etc). comments in zsmalloc() can shed some light. -ss
Re: Zram for FreeBSD
Cool, I am starting to get a good grasp on what is going on (I’ll probably need to use FreeBSD’s archive.h as opposed to Linux’s crypto.h). I am trying to get a hold on what exactly I need to port to FreeBSD. I see that (as Nitin suggested) zsmalloc is the main brains of handling the objects and that it creates a fixed amount of sharded “pages” which a compressed (or uncompressed) actual page can span. I see also that that depends on zpool. I will probably find all “dependencies”; however, if one of you could describe the components used/implemented for this, that’d be awesome. Also, any linux specific setup/layout details come to mind? Seriously, any details would be appreciated. It will save me time. Thanks, Cory On 10/5/16, 9:43 PM, "Sergey Senozhatsky"wrote: Hi, On (10/05/16 16:47), Cory Pruce wrote: >Could one of you tell me why these compression algo’s were chosen, zram supports more than that. https://marc.info/?l=linux-kernel=146469777105130 >if they were implemented as a need for zram, and hm... not all of them (if any at all). lzo, *may be*, was motivated by "compression/decompression perfromance VS compression ratio", which is imporatant for zram. >what the policy is on porting these to FreeBSD? no idea. -ss
Re: Zram for FreeBSD
Cool, I am starting to get a good grasp on what is going on (I’ll probably need to use FreeBSD’s archive.h as opposed to Linux’s crypto.h). I am trying to get a hold on what exactly I need to port to FreeBSD. I see that (as Nitin suggested) zsmalloc is the main brains of handling the objects and that it creates a fixed amount of sharded “pages” which a compressed (or uncompressed) actual page can span. I see also that that depends on zpool. I will probably find all “dependencies”; however, if one of you could describe the components used/implemented for this, that’d be awesome. Also, any linux specific setup/layout details come to mind? Seriously, any details would be appreciated. It will save me time. Thanks, Cory On 10/5/16, 9:43 PM, "Sergey Senozhatsky" wrote: Hi, On (10/05/16 16:47), Cory Pruce wrote: >Could one of you tell me why these compression algo’s were chosen, zram supports more than that. https://marc.info/?l=linux-kernel=146469777105130 >if they were implemented as a need for zram, and hm... not all of them (if any at all). lzo, *may be*, was motivated by "compression/decompression perfromance VS compression ratio", which is imporatant for zram. >what the policy is on porting these to FreeBSD? no idea. -ss
Re: Zram for FreeBSD
Hi, On (10/05/16 16:47), Cory Pruce wrote: >Could one of you tell me why these compression algo’s were chosen, zram supports more than that. https://marc.info/?l=linux-kernel=146469777105130 >if they were implemented as a need for zram, and hm... not all of them (if any at all). lzo, *may be*, was motivated by "compression/decompression perfromance VS compression ratio", which is imporatant for zram. >what the policy is on porting these to FreeBSD? no idea. -ss
Re: Zram for FreeBSD
Hi, On (10/05/16 16:47), Cory Pruce wrote: >Could one of you tell me why these compression algo’s were chosen, zram supports more than that. https://marc.info/?l=linux-kernel=146469777105130 >if they were implemented as a need for zram, and hm... not all of them (if any at all). lzo, *may be*, was motivated by "compression/decompression perfromance VS compression ratio", which is imporatant for zram. >what the policy is on porting these to FreeBSD? no idea. -ss