Skip to content

Commit

Permalink
Allocator links and more
Browse files Browse the repository at this point in the history
More links
  • Loading branch information
gunnarku committed Feb 27, 2024
1 parent 8f88e9a commit 916e2d8
Show file tree
Hide file tree
Showing 4 changed files with 90 additions and 1 deletion.
19 changes: 19 additions & 0 deletions cr.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@

# Papers

There are too many papers on the topics to list. Here are some to get you
started with:

* Another [collection of code review papers](https://github.com/manjunath5496/Code-Review-Papers/blob/main/README.md).
* [Code Review is just reviewing code? A qualitative study with practitioners in industry](https://dl.acm.org/doi/10.1145/3474624.3477063)
* [What really matters in Code Review? A study about challenges and opportunities related to code review in industry](https://dl.acm.org/doi/10.1145/3493244.3493255)
* [Using nudges to accelerate code reviews at scale](https://dl.acm.org/doi/10.1145/3540250.3549104)
* [The impact of human factors on the participation decision of reviewers in modern code review](https://link.springer.com/article/10.1007/s10664-018-9646-1)
* [Understanding the Experience of Code Review: Misalignments, Attention, and Units of Analysis](https://dl.acm.org/doi/10.1145/3530019.3530037)
* [Revisiting code ownership and its relationship with software quality in the scope of modern code review](https://dl.acm.org/doi/10.1145/2884781.2884852)
* [Open source software peer review practices: a case study of the Apache server](https://dl.acm.org/doi/10.1145/1368088.1368162)
* [Does every inspection need a meeting?](https://dl.acm.org/doi/10.1145/167049.167070)
* [Understanding the sources of variation in software inspections](https://dl.acm.org/doi/10.1145/268411.268421)
* [Can we benchmark Code Review studies? A systematic mapping study of methodology, dataset, and metric](https://www.sciencedirect.com/science/article/abs/pii/S0164121221001060)
* [Replication Package for "The Impact of Human Factors on the Participation Decision of Reviewers in Modern Code Review"](https://github.com/sruangwan/replication-human-factors-code-review)

2 changes: 2 additions & 0 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ My academic ties were associated with the [University of Groningen](https://sear

## Research
I defended my dissertation on October 17, 2023.
Majority of my research was related to the insanity of [code reviews](cr.md).
My thesis supervisors were [Dr. Ayushi Rastogi](https://ayushirastogi.github.io/) and [Prof. Paris Avgeriou](https://www.cs.rug.nl/~paris/) from the [Bernoulli Institute for Mathematics, Computer Science and Artificial Intelligence](https://www.rug.nl/research/bernoulli/) at the [University of Groningen](https://www.rug.nl/) in Netherlands.
I was part of the [Software Engineering and Architecture research group](https://search-rug.github.io/).
A preprint of every recent research paper I have written and accepted by arXiv is available [there](https://arxiv.org/search/cs?searchtype=author&query=Kudrjavets,+G) for free.
Expand All @@ -22,6 +23,7 @@ My research projects focus on empirical challenges coming from the existing larg
The key qualifier for me is the practical application of results.
Any study I am involved with must be eventually useful for software engineers.
Niklaus Wirth's "[A Plea for Lean Software](https://people.inf.ethz.ch/wirth/Articles/LeanSoftware.pdf)" is still one of my favorite CS papers.
Read "[Producing wrong data without doing anything obviously wrong!](https://dl.acm.org/doi/10.1145/1508244.1508275)" and ponder about how complicated it is to produce valid results.

## References and link collections

Expand Down
60 changes: 60 additions & 0 deletions memory.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,11 +96,71 @@ Take the following with a grain of salt.
* [libumem](https://en.wikipedia.org/wiki/Libumem) and its [port](https://github.com/omniti-labs/portableumem/).
* [CLMalloc: contiguous memory management mechanism for large-scale CPU-accelerator hybrid architectures](https://doi.org/10.1117/12.2660807)
* [CustoMalloc: efficient synthesized memory allocators](https://dl.acm.org/doi/10.1002/spe.4380230804)
* [DieHard](https://github.com/emeryberger/DieHard)
* [dlmalloc](https://gee.cs.oswego.edu/dl/html/malloc.html)
* [dnmalloc](https://fossies.org/linux/misc/samhain-4.5.0.tar.gz/samhain-4.5.0/src/dnmalloc.c)
* scalloc: [Fast, multicore-scalable, low-fragmentation memory allocation through large virtual memory and global data structures](https://dl.acm.org/doi/10.1145/2814270.2814294). Source code is [here](https://github.com/cksystemsgroup/scalloc). Project page is [here](http://scalloc.cs.uni-salzburg.at/).
* ffmalloc
* FLFUMSA
* [FreeGuard](https://github.com/UTSASRG/FreeGuard)
* [Guarder](https://github.com/UTSASRG/Guarder)
* [Hardened malloc](https://github.com/GrapheneOS/hardened_malloc/)
* HMalloc
* [Hoard](https://github.com/emeryberger/Hoard)
* [How Hard is it to Adapt a Memory Allocator to CHERI?](https://tratt.net/laurie/blog/2023/how_hard_is_it_to_adapt_a_memory_allocator_to_cheri.html)
* [Identifying Memory Allocation Patterns in HEP Software](https://cds.cern.ch/record/2298615/files/pdf.pdf). Here's how malloc interpose [is implemented](https://github.com/FOM-Tools/FOM-Tools/blob/master/src/mallocinterpose.cxx).
* [Intel TBB allocator](https://github.com/oneapi-src/oneTBB)
* [IsoAlloc](https://github.com/struct/isoalloc)
* [jemalloc](https://github.com/jemalloc)
* [jmalloc](https://github.com/Aalto5G/jmalloc)
* [kmalloc](https://github.com/freebsd/freebsd-src/blob/main/libexec/rtld-elf/rtld_malloc.c)
* LFMalloc
* LFMalloc
* LFMallocwoGC
* LKmalloc
* [Lock-free memory allocator without garbage collection on multicore embedded devices](https://ieeexplore.ieee.org/document/6776071)
* [Lockless](http://locklessinc.com/)
* LRMalloc
* [ltalloc](https://github.com/alextretyak/ltalloc)
* [Makalu: fast recoverable allocation of non-volatile memory](https://dl.acm.org/doi/10.1145/2983990.2984019). Source code is [here](https://github.com/HewlettPackard/Atlas/tree/makalu).
* MarkUs
* [Mallacc: Accelerating Memory Allocation](https://dl.acm.org/doi/10.1145/3093337.3037736)
* MCMalloc
* [McRT-Malloc: a scalable transactional memory allocator](https://dl.acm.org/doi/abs/10.1145/1133956.1133967)
* PAllocator: [Memory management techniques for large-scale persistent-main-memory systems](https://dl.acm.org/doi/abs/10.14778/3137628.3137629)
* [Mesh](https://github.com/plasma-umass/Mesh)
* [Mostly lock-free malloc](https://dl.acm.org/doi/abs/10.1145/512429.512451)
* [MPKAlloc](https://github.com/BUseclab/mpkalloc)
* mtmalloc: [article here](https://www.oracle.com/technical-resources/articles/it-infrastructure/dev-mem-alloc.html) and [manual here](https://docs.oracle.com/cd/E88353_01/html/E37843/mtmalloc-3malloc.html)
* [musl malloc](https://musl.libc.org/)
* [NBMALLOC: Allocating Memory in a Lock-Free Manner](https://link.springer.com/article/10.1007/s00453-008-9268-x). See [this paper](https://link.springer.com/chapter/10.1007/11561071_31) as well. Project page is [here](https://www.cse.chalmers.se/research/group/dcs/nbmalloc.html).
* [nedmalloc](https://github.com/ned14/nedmalloc)
* [NUMAlloc: A Faster NUMA Memory Allocator](https://dl.acm.org/doi/10.1145/3591195.3595276)
* [NVAlloc: rethinking heap metadata management in persistent memory allocators](https://dl.acm.org/doi/10.1145/3503222.3507743). Source code is [here](https://github.com/ISCS-ZJU/NVAlloc).
* [ottomalloc](https://github.com/openbsd/src/blob/master/lib/libc/stdlib/malloc.c)
* [PartitionAlloc](https://chromium.googlesource.com/chromium/src/+/main/base/allocator)
* [phkmalloc](https://github.com/emeryberger/Malloc-Implementations/tree/master/allocators/phkmalloc)
* [Profiling a warehouse-scale computer](https://dl.acm.org/doi/10.1145/2749469.2750392)
* [ptmalloc3](http://www.malloc.de/en/)
* ptlbmalloc2
* Rockall
* [rpmalloc](ttps://github.com/mjansson/rpmalloc)
* [Scalable lock-free dynamic memory allocation](https://dl.acm.org/doi/10.1145/996893.996848)
* [Scudo](https://source.android.com/docs/security/test/scudo)
* [SFMalloc](https://github.com/jeffhammond/sfmalloc)
* [SlimGuard](https://github.com/ssrg-vt/SlimGuard)
* [snmalloc](https://github.com/microsoft/snmalloc)
* [SSMalloc: a low-latency, locality-conscious memory allocator with stable performance scalability](https://dl.acm.org/doi/10.1145/2349896.2349911)
* [streamflow](https://github.com/scotts/streamflow)
* [Supermalloc](https://github.com/kuszmaul/SuperMalloc)
* Thrifty-malloc
* [TCMalloc](https://github.com/google/tcmalloc)
* [TLSF](http://www.gii.upv.es/tlsf/)
* Ralloc: [Understanding and optimizing persistent memory allocation](https://dl.acm.org/doi/abs/10.1145/3332466.3374502).
* [VCMalloc](https://github.com/ycinhdj/vcmalloc)
* Traces of vmalloc in Apple's [ksh](https://opensource.apple.com/source/ksh/ksh-13/ksh/src/lib/libast/include/vmalloc.h.auto.html).
* [Vmalloc](https://doi.org/10.1002/(SICI)1097-024X(199603)26:3%3C357::AID-SPE15%3E3.0.CO;2-%23)
* [wfspan: Wait-free Dynamic Memory Management](https://dl.acm.org/doi/10.1145/3533724)
* [xmalloc](https://github.com/ederc/xmalloc)
* XMalloc

10 changes: 9 additions & 1 deletion resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,13 @@
* "[Writing an effective response to a manuscript review](https://www.journals.uchicago.edu/doi/full/10.1086/688886)".
* It's just going through the motions ... "[The Toxic Culture of Rejection in Computer Science](https://sigbed.org/2022/08/22/the-toxic-culture-of-rejection-in-computer-science/)" by [Edward Lee](https://ptolemy.berkeley.edu/~eal/index.html).

## Completing your thesis

* [IEEE Post-Publication Policies](https://conferences.ieeeauthorcenter.ieee.org/author-ethics/guidelines-and-policies/post-publication-policies/)
* [IEEE: Can I reuse my published article in my thesis?](https://conferences.ieeeauthorcenter.ieee.org/get-published/about-transferring-copyright-to-ieee/#thesis)
* [ACM Author Rights](https://authors.acm.org/author-resources/author-rights)
* [Can I include Figures and Texts from IEEE/ACM publications in my PhD thesis?](https://academia.stackexchange.com/questions/182365/can-i-include-figures-and-texts-from-ieee-acm-publications-in-my-phd-thesis)

## Mathematical statistics

### General
Expand Down Expand Up @@ -121,10 +128,11 @@ https://www.youtube.com/@datatab/videos

## Journals

* [Empirical Software Engineering](https://www.springer.com/journal/10664)
* [Empirical Software Engineering](https://www.springer.com/journal/10664). Look at [Publish Open Access in EMSE](https://emsejournal.github.io/open_access)
* [IEEE Transactions on Software Engineering](https://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32)
* [Journal of Systems and Software](https://www.sciencedirect.com/journal/journal-of-systems-and-software)
* [The long list of SE conferences and journals](https://twitter.com/aserebrenik/status/1684570243182792707). Direct link to [Google Sheets file](https://t.co/Zl4MJc3GPa).
* Springer Nature and their [OA agreement for the Netherlands](https://www.springernature.com/gp/open-research/oa-agreements/netherlands). And [more details](https://springernature.turtl.co/story/ta_authors/page/5?pid=63ad4ff9c37e816846875b4f).

## Random useful stuff

Expand Down

0 comments on commit 916e2d8

Please sign in to comment.