Qualcomm
Staff Engineer
Qualcomm Research Silicon Valley
Senior Engineer
University of Texas at Dallas Aug 2010 - Dec 2011
Graduate Teaching Assistant
Reputation.com Jun 2010 - Aug 2010
Software Engineering Intern
University of Texas at Dallas Jan 2010 - May 2010
Graduate Research Assistant
Education:
The University of Texas at Dallas 2010 - 2014
Doctorates, Doctor of Philosophy, Computer Engineering, Philosophy
The University of Texas at Dallas 2007 - 2009
Master of Science, Masters, Computer Engineering
Maulana Azad National Institute of Technology 2003 - 2007
Bachelors, Bachelor of Technology, Communication, Engineering, Electronics
National Public School 1989 - 2003
Skills:
Algorithms C++ Unix Parallel Programming Programming Distributed Systems Shell Scripting Linux Parallel Algorithms Multi Core Programming Shared Memory Distributed Algorithms Multi Threaded Development Data Structures Software Engineering Matlab Operating Systems Pthreads Garbage Collection Transactional Memory Embedded Systems Git Github Multi Core Wearables Wearable Computing Internet of Things Parallel Computing Parallel Processing Software Systems Engineering Concurrent Programming Gitlab Android Ndk C Java Machine Learning Javascript
Department of Computer Science, The University of Texas at Dallas
Jan 2012 to 2000 Graduate Research AssistantThe University of Texas at Dallas Richardson, TX Sep 2010 to Jan 2012 Graduate Teaching AssistantReputation.com Redwood City, CA Jun 2010 to Aug 2010 Software Engineering Intern
Education:
The University of Texas at Dallas Richardson, TX 2010 to 2013 Doctor of Philosophy in Computer EngineeringThe University of Texas at Dallas Richardson, TX 2007 to 2009 MS in Computer EngineeringMaulana Azad National Institute of Technology Bhopal, Madhya Pradesh 2003 to 2007 B.Tech in Electronics and Communication Engineering
Skills:
Algorithms, Data Structures, Programming, Research
Department of Computer Science, The University of Texas at Dallas
Jan 2012 to 2000 Graduate Research AssistantThe University of Texas at Dallas Richardson, TX Sep 2010 to Jan 2012 Graduate Teaching AssistantReputation Defender Inc. Redwood City, CA Jun 2010 to Aug 2010 Software Engineering Intern
Education:
The University of Texas at Dallas Richardson, TX 2010 to 2013 PhD in Computer EngineeringThe University of Texas at Dallas Richardson, TX 2007 to 2009 Master of Science in Computer EngineeringMaulana Azad National Institute of Technology Bhopal, Madhya Pradesh 2003 to 2007 Bachelor of Technology in Electronics and Communication Engineering
Skills:
Algorithm Design and Implementation, Parallel Programming.
Us Patents
Speculative Loop Iteration Partitioning For Heterogeneous Execution
- San Diego CA, US Han Zhao - Santa Clara CA, US Aravind Natarajan - Sunnyvale CA, US
International Classification:
G06F 9/50
Abstract:
Embodiments include computing devices, apparatus, and methods implemented by the apparatus for implementing speculative loop iteration partitioning (SLIP) for heterogeneous processing devices. A computing device may receive iteration information for a first partition of iterations of a repetitive process and select a SLIP heuristic based on available SLIP information and iteration information for the first partition. The computing device may determine a split value for the first partition using the SLIP heuristic, and partition the first partition using the split value to produce a plurality of next partitions.
Shared Virtual Index For Memory Object Fusion In Heterogeneous Cooperative Computing
- San Diego CA, US Arun Raman - San Francisco CA, US Aravind Natarajan - Sunnyvale CA, US
International Classification:
G06F 12/109
Abstract:
Embodiments include computing devices, apparatus, and methods implemented by the apparatus for implementing shared virtual index translation on a computing device. The computing device may receive a base virtual address for storing an output of a kernel function execution to a dedicated memory and determine whether the virtual address is in a range of virtual addresses for a privatized output buffer within the dedicated memory, which may be smaller than the dedicated memory. The computing device may calculate a first modified physical address using a physical address mapped to the base virtual address and an offset of a first processing device associated with the dedicated memory in response to determining that the base virtual address is in the range of virtual addresses. The computing device may store the output of the kernel function execution to the privatized output buffer at the first modified physical address.
Identifying Enhanced Synchronization Operation Outcomes To Improve Runtime Operations
- San Diego CA, US Gheorghe Cascaval - Palo Alto CA, US Han Zhao - Santa Clara CA, US Tushar Kumar - San Jose CA, US Aravind Natarajan - Sunnyvale CA, US Arun Raman - Fremont CA, US
International Classification:
G06F 9/52
Abstract:
Embodiments include computing devices, systems, and methods identifying enhanced synchronization operation outcomes. A computing device may receive a first resource access request for a first resource of a computing device including a first requester identifier from a first computing element of the computing device. The computing device may also receive a second resource access request for the first resource including a second requester identifier from a second computing element of the computing device. The computing device may grant the first computing element access to the first resource based on the first resource access request, and return a response to the second computing element including the first requester identifier as a winner computing element identifier.
Random-Access Disjoint Concurrent Sparse Writes To Heterogeneous Buffers
- San Diego, CA Aravind Natarajan - Sunnyvale CA, US Dario Suarez Gracia - Teruel, ES
International Classification:
G06F 3/06 G06F 12/10
Abstract:
Methods, devices, and non-transitory processor-readable storage media for a computing device to merge concurrent writes from a plurality of processing units to a buffer associated with an application. An embodiment method executed by a processor may include identifying a plurality of concurrent requests to access the buffer that are sparse, disjoint, and write-only, configuring a write-set for each of the plurality of processing units, executing the plurality of concurrent requests to access the buffer using the write-sets, determining whether each of the plurality of concurrent requests to access the buffer is complete, obtaining a buffer index and data via the write-set of each of the plurality of processing units, and writing to the buffer using the received buffer index and data via the write-set of each of the plurality of processing units in response to determining that each of the plurality of concurrent requests to access the buffer is complete.
Data Management For Multiple Processing Units Using Data Transfer Costs
- San Diego CA, US Tushar Kumar - San Francisco CA, US Aravind Natarajan - Sunnyvale CA, US Ravish Hastantram - San Jose CA, US Gheorghe Calin Cascaval - Palo Alto CA, US Han Zhao - Santa Clara CA, US
International Classification:
G06F 9/50
Abstract:
Various embodiments include methods for data management in a computing device utilizing a plurality of processing units. Embodiment methods may include generating a data transfer heuristic model based on measurements from a plurality of sample data transfers between a plurality of data storage units. The generated data transfer heuristic model may be used to calculate data transfer costs for each of a plurality of tasks. The calculated data transfer costs may be used to schedule execution of the plurality of tasks in an execution order on selected ones of the plurality of processing units. The data transfer heuristic model may be updated based on measurements of data transfers occurring during the executions of the plurality of tasks (e.g., time, power consumption, etc.). Code executing on the processing units may indicate to a runtime when certain data blocks are no longer needed and thus may be evicted and/or pre-fetched for others.
Method For Exploiting Parallelism In Task-Based Systems Using An Iteration Space Splitter
- San Diego CA, US Shaizeen Dilawarhusen Aga - Ann Arbor MI, US Dario Suarez Gracia - Santa Clara CA, US Arun Raman - Santa Clara CA, US Aravind Natarajan - Sunnyvale CA, US Gheorghe Calin Cascaval - Palo Alto CA, US Pablo Montesinos Ortego - Fremont CA, US Han Zhao - Santa Clara CA, US
International Classification:
G06F 9/50
Abstract:
Embodiments include computing devices, systems, and methods for task-based handling of repetitive processes in parallel. At least one processor of the computing device, or a specialized hardware controller, may be configured to partition iterations of a repetitive process and assign the partitions to initialized tasks to be executed in parallel by a plurality of processor cores. Upon completing a task, remaining divisible partitions of the repetitive process of ongoing tasks may be subpartitioned and assigned to the ongoing task, and the completed task or a newly initialized task. Information about the iteration space for a repetitive process may be stored in a descriptor table, and status information for all partitions of a repetitive process stored in a status table. Each processor core may have an associated local table that tracks iteration execution of each task, and is synchronized with the status table.
Flickr
Youtube
tinyML Talks - Aravind Natarajan: Pushing th...
tinyML Talks webcast - recorded July 21, 2020 "Pushing the Limits of U...
Duration:
38m 32s
Aravind Natarajan presents at Cornell's 2017 ...
Finalist Aravind Natarajan.
Duration:
3m 6s
Data Driven Sales & Marketing Using Advanced ...
Crunch your CRM data and convert it to valuable insights. Know in adva...
Duration:
17m 7s
Inauguration of the Every Child A Scientist P...
Inauguration of the Every Child A Scientist Program 2021-2022 26 Septe...
Duration:
1m 4s
An Introduction to Centerfield
In this podcast, Aravind Natarajan is in conversation with Abhishek Th...
Duration:
46m 51s
December Music Season Dec 2021 Concerts - Ka...
Kalyanapuram Aravind Vocal H N Bhaskar Violin Delhi Sairam Mridangam C...