Skip to content

Instantly share code, notes, and snippets.

View rajesh-s's full-sized avatar
:octocat:
Trying to go to bed a little wiser than when I woke up

Rajesh Shashi Kumar rajesh-s

:octocat:
Trying to go to bed a little wiser than when I woke up
View GitHub Profile

Keybase proof

I hereby claim:

  • I am rajesh-s on github.
  • I am rajesh_s (https://keybase.io/rajesh_s) on keybase.
  • I have a public key ASC11MKyabCPcYyDm_dHiy_0Oof6zIK_mlQXmNM9r1T_cwo

To claim this, I am signing this object:

@rajesh-s
rajesh-s / README-Template.md
Created May 9, 2019 14:12 — forked from PurpleBooth/README-Template.md
A template to make good README.md

Project Title

One Paragraph of project description goes here

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

@rajesh-s
rajesh-s / issues.md
Last active November 30, 2020 19:59
Issues/workarounds for installing various tools

Issues & Workarounds

GTKWave

Dependencies: sudo apt install gperf gtk2.0

OS Used: Ubuntu 18.04

Error while building:

~/gtkwave-3.3.102$ ./configure
@rajesh-s
rajesh-s / privacy_challenges.md
Created January 10, 2020 05:30
Food for thought on finding a way to address privacy challenges

Understanding privacy challenges in the age where data is everything

The Problem

  • Most critical data is in the form of plain text (CVV, phone numbers, full name, email, SSN etc.).
  • Plaintext unlike an image (/soundtrack/email) lacks metadata indicating the source of the data. [ELI5: metadata is a set of attributes such as last modified, device created on etc. which is always associated with the file (such as an image) even if someone copies it to a new device]
  • Now the problem with this is that a decade ago we shared important credentials only with a few sources. But now there are a ton of different apps and services with long list of convoluted clauses that make it extremely difficult to know the implications of sharing data.
  • For example, there have been cases where services like TrueCaller sell user datasets for money to advertisers etc.
  • The issue here is that once an adversary has gained access to private data such as email/card number/phone number there is no way to find the originating sour

Delving into the why's of AXI

**Note: In all below, slave can also mean interconnect

  • Do we really need back-pressure?
    • Yes, you absolutely need backpressure. What happens when two masters want to access the same slave? One has to be blocked for some period of time. Some slaves may only be able to handle a limited number of concurrent operations and take some time to produce a result. As such, backpressure is required.
    • B and R channel backpressure is required in the case of contention towards the master. If a master makes burst read requests against two different slaves, one of them is gonna have to wait.
      • Shouldn't a master be prepared to receive the responses for any requests it issues from the moment it makes the request? Aside from the clock crossing issue someone else brought up, and the interconnect issue at the heart of the use of IDs, why should an AXI master ever stall R or B channels?
  • The master should be prepared, but it only has one R and one B input, so it can't re
@rajesh-s
rajesh-s / datatypesize.c
Created April 25, 2020 07:08
Snippet to determine the defined sizes of C data types on any machine
// Determine ranges of short,int,long (unsigned/signed) and char by implementation
#include <stdio.h>
#include <limits.h> // Defines size constants for integral typs
#include <float.h> // Defines floating-point-arithmetic related parameters
void main()
{
printf("The range of %d bit char values: %d to %d", CHAR_BIT, CHAR_MIN, CHAR_MAX); // These are #defines in the header
printf("\nThe range of signed char values: %d to %d", SCHAR_MIN, SCHAR_MAX);
@rajesh-s
rajesh-s / leaderboard_cs.md
Last active May 26, 2020 08:22
Leaderboard for the CoreScore project

CoreScore Leaderboard

The intent is to capture available statistics for the CoreScore project. This could be useful to analyze cores vs specific hardware, core count over time or simply admire the glorious core numbers. Ran into this thought because I wanted to find out if someone has already run CoreScore on one of the FPGA boards that I wanted to try it on.

26-May: The statistic so far is from tweets on @OlofKindgren. Hopefully, I will continually update this. My immediate intent is to get this running on my Nexys Video. Feel free to update your results.

Leaderboard

@rajesh-s
rajesh-s / gem5_on_wsl2.md
Last active September 5, 2022 18:29
Installing gem5 simulator on Windows WSL2 (Windows Subsystem for Linux 2)

Installing gem5 simulator on Windows WSL2

  1. Install WSL2 using PowerShell (Assuming you are on 2004 build else check this
  dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
  dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  wsl --set-default-version 2
  1. Install distro, terminal from Microsoft App store
@rajesh-s
rajesh-s / paper_review_template.md
Created October 28, 2020 18:06
Paper review template from Prof. Onur Mutlu's suggested approach

Title

Brief summary

  • What is the problem the paper is trying to solve?
  • What are the key ideas of the paper? Key insights?
  • What is the key contribution to literature at the time it was written?
  • What are the most important things you take out from it?

Strengths (most important ones)

@rajesh-s
rajesh-s / adb_ref.md
Created December 31, 2020 08:09
ADB quick reference

Platform tools download

adb shell
adb devices
pm list packages
pm uninstall -k --user 0 <name of package>
adb shell cmd package install-existing <name of package> #Restore