Skip to content

Instantly share code, notes, and snippets.

View edcote's full-sized avatar
🎯
Googler

Edmond Cote edcote

🎯
Googler
View GitHub Profile
@edcote
edcote / shen_lipasti.md
Last active July 31, 2018 18:54
Modern Processor Design - Shen, Lipasti

Chapter 1

  • "Iron law": 1/Perf = time/program = instructions/program (cycle count) * cycles/instruction (CPI) * time/cycle (cycle time)
  • "Amdahl's law" = speedup = 1 / time = 1 / ((1-f)+(f/N))
    • speedup is limited by sequential bottlenec

Chapter 2

  • Three possible data dependences between two instructions, true (RAW), anti (WAR), and output (WAW). Also applies to memory data dependencies (not applicable in simple five stage pipeline).
  • There is also control dependencies.
@edcote
edcote / scala_for_ml.md
Last active July 18, 2018 19:57
Scala for Machine Learning

Notes for 'Scala for Machine Learning, P. Nicolas" url

  • Chapter 1

Critical to understand the different classes of ML algorithms and to select the ones that are relevant to the domain.

ML problems are categorized as classification, prediction, optimization, and regression.

  • Classification is to extract knowledge for historical data. For example, a classifier can be built to identify a disease from a set of symptoms.
@edcote
edcote / spark.md
Last active July 17, 2018 19:23
Apache Spark
@edcote
edcote / neuromem.md
Last active July 11, 2018 23:12
NeuroMem research

CM1K Chip

Each neuron consists of SRAM and a small programmable logic unit. The logic is prewired to run certrain types of algorithms. Neurons are interconnected using a small bidir bus.

Released in 2007. Follow up to IBM ZISC chip. ZISC refers to an architecture based solely on pattern matching and the abscense of micro-instructions. A single ZISC036 holds 36 neurons to implement an RBF network trained with the RCE (or ROI) algorithm.

ZISC employs Radial Basis Function (RBF) and K-Nearest Neighbor (KNN) algorithms. ZISC approach is a specialized but cheap chip to do one thing very quickly.

  • RBF: Real-valued function whose value depends only on the distance from the origin. Used as a kernel in support vector classification. Can be interpreted as a simple single-layer type of ANN.
  • KNN: Stores all avalable cases and classifies new cases based on a similarly measure (e.g. distance function). Used in statistical estimation and pattern recognition.
@edcote
edcote / ulimit.md
Last active July 10, 2018 18:12
ulimit gotcha
@edcote
edcote / zeppelin.md
Last active June 29, 2018 17:01
Apache Zeppelin

Installation

Download tool from here. Unzip, then launch: bin/zeppelin-daemon.sh start

Then, browse to http://localhost:9009/#/

Here is an example Systemd service file:

$ cat /etc/systemd/system/zeppelin.service 

[Unit]

@edcote
edcote / mongodb.md
Last active June 21, 2018 15:26
MongoDB

MongoDB

MongoDB stores data in flexible, JSON-like documents. The document model maps to object in your application code, making data easy to work with. MongoDB is a distributed database at its core.

Here. Be careful, need 3.4 or later.are notes on how to install MongoDB on RHEL7.

Spark and MongoDB

MongoDB is a document store (and essentially a database). Spark is a computing engine and not a store. When used together, Spark jobs can be executed directly on operational data sitting in MongoDB.

@edcote
edcote / cmake.md
Last active June 14, 2018 00:49
CMake Notes

Why CMake? Why? It is only me or do I find CMake to be convoluted and non intuitive?

  • Debug vs. Release:

Technically, this is all that is needed:

cmake -DCMAKE_BUILD_TYPE=Release ..
cmake -DCMAKE_BUILD_TYPE=Debug ..
@edcote
edcote / scala.md
Last active June 12, 2018 15:19
Scala Notes

Scala Notes

Variables

Immutable and mutable

Scala has two kinds of variables, vals and vars:

  • val is immutable, cannot be reassigned
  • var is mutable, can be reassigned
@edcote
edcote / tilelink.md
Created May 26, 2018 22:59
SiFive TileLink Specification