55 Matching Annotations
  1. Sep 2021
  2. Jul 2021
    1. ow we can hide the latency of the disk rather than focusing on optimizations with registersand caches since getting data from disk is so slow.

      优化瓶颈

  3. Jun 2021
  4. Mar 2021
    1. Instead of leaving trust up to chance, you can engineer it by building a repeatable system.

      this is a wonderful quote, I as an engineer love it!

    2. On my worst days, I leave them completely in the dark and go into a cave, emerging from hibernation after days or weeks without any updates.

      yeah, this is so true, so basically, my whole career is in its worse days... I need to change.

  5. Feb 2021
    1. execute

      this function must be the entry of each goroutine's execution. I can imagine it will use call to jump to the gouroutine's IP

  6. Dec 2020
    1. Go has the GOGC variable, that can also be controlled with the SetGCPercent function in the runtime/debug package. Don't be afraid to tune the GC to suit your needs.

      Good to know that we could SetGCPercent during runtime.

  7. Aug 2020
  8. May 2020
    1. For example, a split pipeline makes it easy to implement caching intermediate data, stealing intermediate data from similar queries running at the same time, and merging pipelines for similar queries.

      还有这种操作……

  9. Apr 2020
    1. 对于大部分简单的 Transformation Rule,所以 Match() 函数只需要简单地返回 true 就行了。

      这个“所以”略迷啊?

    2. 另外每个优化规则都需要完整的遍历整个逻辑执行计划,添加优化规则的心智负担和知识门槛非常高。

      orz

    1. hese queries are often optimizedby partitioning the fact table and replicating the dimension tableson all workers

      即 broadcast join

    1. GreenPlum 是一个基于 PostgreSQL 的 mpp 版本的 db,支持完整的 SQL 语义和各种 db 功能,基本上就可以把他当做一个黑盒的,兼容 PostgreSQL 协议的 db 来用

      可以的

    1. At the moment, cost-based optimization is only used to select join algorithms: for relations that are known to be small, Spark SQL uses a broadcast join, using a peer-to-peer broadcast facility available in Spark

      可以的

    1. We also prune cartesian product candidates when building a new plan if there exists no join condition involving references from both left and right subtrees. This pruning strategy significantly reduces the search space.

      没看懂?

    2. num(A IJ B) = num(A)*num(B)/max(distinct(A.k),distinct(B.k))

      take a look at database system concept, it has explanation for this formula.

  10. Mar 2019
    1. 0xffff0 is 16 bytes before the end of the BIOS (0x100000). Therefore we shouldn't be surprised that the first thing that the BIOS does is jmp backwards to an earlier location in the BIOS; after all how much could it accomplish in just 16 bytes?

      This explains well why we need a long jump, however why not we just start from the place at the beginning of the BIOS?

  11. Dec 2018
    1. thehardware raises the privilege level and starts executing a pre-arranged function in thekernel

      So in this case, we need to register these functions to hardware, don't we?

    2. hus a process al-ternates between executing inuser spaceandkernel space.

      When I was programming in MIPS (and run it in a simulator), I sometimes need to use system call to print a number on screen, I used to believe that the system call is part of the MIPS, but here it states clear that system call is the way how user interact with the kernel. But how MIPS provided this unified interface? If I am writing a program in C and compile it into MIPS that requires system call, will it be compiled to these system call instruction? Or calling a function that is actually part of the kernal?

  12. Oct 2018
    1. Because there are only local latent variables, we can easily decompose the ELBO into terms Li\mathcal{L}_iL​i​​\mathcal{L}_i that depend only on a single datapoint xix_ix​i​​x_i. This enables stochastic gradient descent.

      Why decompose of the ELBO enabled stochastic gradient descent?

    2. KL(q​λ​​(z∣x)∣∣p(z∣x))=KL(q_\lambda(z \vert x) \vert \vert p(z \vert x)) = Eq[logqλ(z∣x)]−Eq[logp(x,z)]+logp(x)\mathbf{E}_q[\log q_\lambda(z \vert x)]- \mathbf{E}_q[\log p(x, z)] + \log p(x)E​q​​[logq​λ​​(z∣x)]−E​q​​[logp(x,z)]+logp(x)

      How is this equation derived from the definition of KL divergence, which is [KL(q_\lambda (z\mid x)\mid\midp(z\mid x)=...] is different..

    3. By Jensen’s inequality, the Kullback-Leibler divergence is always greater than or equal to zero. This means that minimizing the Kullback-Leibler divergence is equivalent to maximizing the ELBO.

      Because the evidence \(p(x)\) is a unknown constant

  13. Sep 2018
  14. Aug 2018
    1. 此外,若通过继承增添了一种新类型,如“三角形”,那么我们为“几何形状”新类型编写的代码会象在旧类型里一样良好地工作。所以说程序具备了“扩展能力”,具有“扩展性”。

      在软件工程化开发中,扩展性是面对易变的需求的必不可少的解决方案

    2. 沿这种思路产生的设计将是非常笨拙的,会大大增加程序的复杂程度。相反,新建类的时候,首先应考虑“组织”对象;这样做显得更加简单和灵活。利用对象的组织,我们的设计可保持清爽。一旦需要用到继承,就会明显意识到这一点。

      先设计好,不要盲目地继承

    3. 第二个原因是允许库设计人员修改内部结构,不用担心它会对客户程序员造成什么影响。

      这个倒是说得过去,因为必然有多余的代码存在,而这些代码难以保证不被傻逼程序员使用,这样修改起来就很麻烦。因此可以将开放访问权限的接口看作是一个强制的约定——只有开放的接口的功能是会得到保障的。

  15. Mar 2018
    1. It makes intuitive sense that you build edges from pixels, shapes from edges, and more complex objects from shapes.

      More fine-grained (low level) feature at first several layers, and coarse at the final layers. Receptive fields are getting larger during layers of convolution.