Gavin Chan's Page
  • About Me
  • Projects
  • Talks
  • Search
✕

    Blog


    Quant finance, engineering, and my book reviews
    • How fast can we generate a new release?

      My journey in poetry, conventional commit and semantic release

      Posted on November 29, 2022

      Post thumbnail
      Post thumbnail
      Working in open source projects is fun, but it may also mean to sacrifice one’s personal time to transform amazing ideas into applications. Down the road of development, tedious and routine works are definitely involved. A colossal amount of chores, e.g. documentation, building distributions, and releases, are demanded to keep... [Read More]
      Tags:
      • python
      • semver
      • devops
      • engineering
      • poetry
      • conventionalcommit
      • semanticrelease
    • Can we build a factor pricing model at the enterprise level?

      Posted on October 14, 2022

      Post thumbnail
      Post thumbnail
      Multifactor models describe the return on an asset in terms of the risk of the asset with respect to a set of factors. The formulation can be represented as [Read More]
      Tags:
      • factormodel
      • riskmodel
      • portfoliomanagement
      • finance
    • Does Sam Gross nogil CPython fork perform faster?

      How far is it now to get rid of GIL in the future Python?

      Posted on October 3, 2022

      Post thumbnail
      Post thumbnail
      GIL (Global Interpreter Lock) is a mechanism in CPython to synchronise the Python bytecode execution to run only in a single thread at a time. It constitutes a straightforward CPython implementation but becomes obstacles of parallelism in Python. Retrospective endeavour in removing GIL did not reward well. Most of the... [Read More]
      Tags:
      • python
      • nogil
      • engineering
    • Python Compiler Comparison (2)

      Compare with various JIT compilation libraries - Numba, JAX, Tensorflow and PyTorch

      Posted on August 27, 2022

      Post thumbnail
      Post thumbnail
      Following with the previous article, I tested further a few more cases to benchmark the runtime performance on various JIT compilation libraries (Numba, JAX, TensorFlow and PyTorch). In this time, I am going to test with a more realistic example used in machine learning and numerical computation - linear regression.... [Read More]
      Tags:
      • python
      • numba
      • jax
      • tensorflow
      • pytorch
      • engineering
    • Python Compiler Comparison (1)

      Cython, Numba and JAX

      Posted on July 13, 2022

      Post thumbnail
      Post thumbnail
      It has been a while I haven’t looked into the current development of Python compilers of which improves the running time of critical paths, e.g. in quantitative finance / scientific research, in the application. There are much more libraries tackling the problem, either by bridging the original CPython C extension... [Read More]
      Tags:
      • python
      • cython
      • numba
      • jax
      • engineering
    • ← Newer Posts
    • Older Posts →
    • RSS
    • GitHub
    • Twitter
    • LinkedIn

    Gavin Chan  •  2025  •  gavincyi.github.io

    Powered by Beautiful Jekyll