Imad Dabbura
  • Blog
  • Paper Summaries
  • TIL
  • Projects
  • DL Tips & Tricks
  • More
    • Library
    • Notes
    • Data Engineering
  • About
Categories
All (105)
C (7)
CLI Tools (6)
CUDA (7)
Chrome (1)
DevOps (4)
Git (1)
ML/DL (4)
PyTorch (4)
Python (42)
SQL (5)
Shell (11)
pytest (13)

Today Imad Learned

Short notes on things I learn day-to-day — Python internals, GPU programming, shell tricks, testing patterns, and more. Each entry is a single idea, written to be useful as a quick reference.
Date Title Categories
Sep 15, 2025 Wave Quantization CUDA
Sep 12, 2025 Tile Quantization CUDA
Sep 3, 2025 The Attention Sink Phenomenon in Transformers ML/DL
Aug 11, 2025 Arithmetic Intensity for GEMM CUDA
Jun 16, 2025 Overparameterization Smooth Optimization ML/DL
May 10, 2025 Dynamic HW Partitioning (GPU) CUDA
Apr 26, 2025 Activations, Not Parameters, Are the Memory Bottleneck in CNNs ML/DL
Apr 3, 2025 Sparse Matrix Formats and the Cost of Data-Dependent Memory Access ML/DL
Mar 20, 2025 CUDA’s Fine-Grained Multithreading: Why GPUs are SPMD, not True SIMD CUDA
Jan 26, 2025 Assigning Array to Numpy Slice Python
Jan 10, 2025 CUDA Memory: The Two Worlds of Host and Device CUDA
Jan 10, 2025 CUDA Kernels Are Functions with Restrictions CUDA
Nov 27, 2024 Class Evaluation Steps Python
Oct 25, 2024 Similarities and Differences between Threads and Coroutine Tasks Python
Oct 2, 2024 Coroutines Don’t Need Synchronization Python
Jun 12, 2024 Interactive Code Interpreter Python
May 27, 2024 String Comparison Python
Jan 18, 2024 Comparing Repo’s History on Github Git
Dec 19, 2023 ssh Configuration Shell
Dec 18, 2023 Exclude Shell Command From History Shell
Dec 7, 2023 Status Code Returned by Shell’s Pipeline Shell
Oct 26, 2023 Difference Between Effective & Real UID/GID Shell
Oct 16, 2023 Directory Access Permissions/Representation Shell
Oct 4, 2023 Lexical Scope in C C
Oct 3, 2023 Linkage in C C
Aug 23, 2023 Useful Tmux Notes CLI Tools
Aug 22, 2023 Parametrization pytest
Aug 21, 2023 Test Outcomes pytest
Aug 18, 2023 Notes on Vim CLI Tools
Aug 15, 2023 Shift by K >= w C
Aug 14, 2023 Notes on Data Type Conversion C
Aug 1, 2023 Unintuitive Behavior on Operations with Signed & Unsigned Operands C
Apr 24, 2023 Pseudorandom Number Generator Python
Mar 27, 2023 Hiding Test Traceback pytest
Mar 25, 2023 Selecting Tests with -m pytest
Mar 22, 2023 Debugging with pytest Flags pytest
Mar 21, 2023 Testing Non-installable Scripts pytest
Mar 15, 2023 The Role of __init__.py in pytest pytest
Mar 13, 2023 Difference Between pytest’s skip, skipif, & xfail Markers pytest
Feb 27, 2023 Which Containers Should Be In The Same Pod DevOps
Feb 2, 2023 Declarative vs Imperative Configuration DevOps
Feb 2, 2023 Tips to Reduce Docker Images DevOps
Jan 31, 2023 GitOps DevOps
Jan 29, 2023 Overriding vs Non-overriding Descriptors Python
Jan 26, 2023 Attribute Access Python
Jan 21, 2023 RANK vs DENSE_RANK vs ROW SQL
Jan 20, 2023 Command Substitution in the Shell Shell
Jan 19, 2023 Process Substitution in the Shell Shell
Jan 16, 2023 @property Python
Jan 1, 2023 Context Manager Protocol Python
Dec 29, 2022 Context Manager Decorator Python
Dec 28, 2022 Reusing Fixtues By All Tests Python
Dec 27, 2022 Testing Expected Exceptions pytest
Dec 26, 2022 Fixtures pytest
Dec 26, 2022 Fixtures’ Scopes pytest
Dec 26, 2022 Logical Execution of try/except/else/finally Blocks Python
Dec 24, 2022 When Does iter() Called Internally Python
Dec 22, 2022 Running Tests pytest
Dec 19, 2022 Test Discovery pytest
Dec 14, 2022 Retrieving Object’s Attributes Python
Dec 13, 2022 Operator Overloading Python
Dec 11, 2022 Sequence Slicing Python
Dec 8, 2022 Using __slots__ to Store Instance’s Attributes Python
Dec 4, 2022 Instance vs Class vs Static Method Python
Dec 1, 2022 Object Destruction Python
Nov 29, 2022 == vs is Python
Nov 27, 2022 Closures Python
Nov 25, 2022 First Class Objects Python
Nov 21, 2022 Clearing Registers CLI Tools
Nov 20, 2022 Aborting Git’s Commit & Rebase CLI Tools
Nov 19, 2022 Parallel vs Series Execution of Macros CLI Tools
Nov 16, 2022 Temporary Files & Directories Shell
Nov 14, 2022 Managed vs External Tables SQL
Nov 6, 2022 Lists vs Tuples Python
Nov 3, 2022 Python Object Lookup Process Python
Nov 1, 2022 Python Logging Python
Oct 27, 2022 Python Wheel Files Python
Oct 19, 2022 C Program Memory Layout C
Oct 17, 2022 Listing tmux Sessions CLI Tools
Oct 15, 2022 Outer Joins & Where Clause SQL
Oct 13, 2022 What Is Null Actually? SQL
Oct 12, 2022 Logical Execution Order of SQL Query SQL
Oct 4, 2022 Detach Tensor From Computation Graph PyTorch
Sep 30, 2022 Character Array vs String Constant Pointers C
Sep 28, 2022 Immutable Objects and Augmented Assignment Operators Python
Sep 25, 2022 Modules and Packages Python
Sep 24, 2022 I/O Redirection Shell
Sep 23, 2022 Loading Modules and Packages Python
Sep 22, 2022 Namespace Packages Python
Sep 21, 2022 Useful Tricks with Null Device Shell
Sep 20, 2022 Decorators Python
Sep 19, 2022 Save Memory When Operating on Tensors PyTorch
Sep 18, 2022 Lazy Layers PyTorch
Sep 16, 2022 List Available GPUs PyTorch
Sep 15, 2022 Conditional Iterators Python
Sep 14, 2022 Mutable Default Function Arguments Python
Sep 12, 2022 Mutability and Inplace Operations Python
Sep 10, 2022 User Defined Classes are Hashable Python
Sep 6, 2022 __getitem__ Makes Object an Iterator Python
Sep 5, 2022 Scope of Variables in Comprehensions Python
Sep 3, 2022 Itemview and Keyview Attributes of Dictionary are Subclasses of Set Python
Sep 1, 2022 Truthiness of Python Objects Python
Aug 31, 2022 Line Continuation Python
Aug 30, 2022 Executing vs Sourcing Script Shell
Aug 29, 2022 Vimium: Vim Key Bindings for Chrome Chrome
No matching items
Back to top

© 2017–2026 Imad Dabbura ∙ Made with Quarto

 
  • Report an issue