This repository has been archived by the owner on Aug 5, 2022. It is now read-only.
index of talks about performance in Swift guide added #80
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
High Performance in Swift guide added
Motivation
Contributing to the repository.
Description:
Overview of the readme file:
Class vs Struct tradeoff and Copy-on-Write
i)difference btw memory allocations
ii)copy-on-write
iii)benchmarking structs with classes
iv)implementing structs backed by classes
v) implementing structs backed by classes with copy on write
vi) Drawbacks of CoW
Concurrency and Locking
i) Race Condition with Semaphores
ii) Priority inversion with Semaphores
iii) Thread explosion
iv) Runtime contract and rewriting code with async/await semantics for better performance of the code.
iv) Synchronization offering:
This covers:
i) Actors with data races when we are accessing the mutable states within the actors
ii) Actors with data races when we are accessing the mutable states outside the actors and fixing it with sendable
protocols
This covers actors with Priority Inversion
Batching up code to improve time complexity and performance
v) Potential bug around await semantics
vi) Other primitives and Lock Contention Pattern
References:
https://www.youtube.com/watch?v=iLDldae64xE
https://www.youtube.com/watch?v=WCUj581Dpec
https://developer.apple.com/videos/play/wwdc2021/10254/
https://developer.apple.com/videos/play/wwdc2021/10133/
Result:
Resolves: #64 guide for writing high performance systems in swift