intel 面试

实习要求

============================================================================
Job Title: Fulltime Hadoop Development Intern
Division/Station: DCSD
Department / Business Unit: SSG/IAG
Location: Zizhu Science Park, Shanghai
Contact: [email protected] <mailto:[email protected] >
Job Description:
         As a Hadoop programmer and researcher, you will participate in the full lifecycle of Hadoop research, feature prototype/design/development, performance/conformance testing and helping the platform engineering team identify both performance bottlenecks and feature gaps of whole Hadoop software stack. You will work with both Hadoop committers and Intel engineering specialist to solve real world problem and contribute directly to Apache OpenSource. You will join an experienced world class engineering team who has successful record on mentorship, and you will learn the cutting edge technologies related with Hadoop, BigData and Intel Platform. You will be act as a full-time paid researcher/developer in at least 6 month not only build solid strong engineering skills but also establish connections/relationships with top programmer across world. It is a great opportunity to mark your own name to the world class software and open source committee!

Role & Responsibilities:

l Research on existing Hadoop technologies and writing technical reports

l Prototype/design/develop features based on technical research papers

l Build/Maintain Hadoop clusters, build/innovate tools for development, debugging and issue tracking

l Identify/Fix bugs both in Hadoop system and related tools

l Present technical research papers/reports internally and externally


Required Skills/Experience:

l Strong academic background on computer science and technologies, include computer architecture, operating system, data structure & algorithm, distributed system, and compiler techniques;

l Solid programming skills include Java, C/C++, script language(bash, perl or python), with proven record;

l Have experience on multi-thread programming, socket programming and jni programming

l Fast learning and can-do attitude, interesting in Hadoop/BigData area;

l Familiar with SCM tools include git, svn, bugzilla, jira etc

l Have knowledge on JVM, LLVM, SSE will be a plus

l Good English communication skill include verbal and writing skills

l Team work and collaboration spirit

l Master in computer science or have proven record as skilled software developer

面试问题

    今天经历了两轮电话面试,第一轮面试还好,主要问了问简历上的一些东西,另外涉及到了体系结构的一些知识。其中有一个没答上来,还得补补:

    1. Cache,高速缓冲存储器(Cache) 内存地址格式 全相联 直接相联 组相连 。参见这里:

    http://blog.csdn.net/abcjennifer/article/details/5528554

总结:

         Cache主要由3个组成部件:

         (1) Cache存储体:存放由主存调入的指令和数据块;

         (2) 地址转换部件: 建立目录表以实现主存地址到缓存地址的转换;

         (3) 替换部件: 在缓存已经存满时按一定策略进行数据块替换,并修改地址转换部件。

         其中后2个组成部件涉及2个技术问题:

         (1) 地址映像和转换(内存<->缓存)

              全相联 :主存和缓存分成相同大小的数据块;主存的某一数据块可以装入缓存的任意块空间中;目录表的容量和缓存块数相同。优点:命中率高;缺点:速度低,∵每次都要与目录比较

              直接相联 :主存化成与缓存等大的多个“区”,目录表还需记录调入块的区号(全相联则需要记录双方的地址)。优点:速度高,因为只需要比较区号;缺点:命中率低

              组相联 :组合上述方式,外围直接相联,内部组相联。缺点:实现难度和造价高

         (2) 替换策略

              随机替换 RAND,先进先出 FIFO,最近最少使用 LRU

         除此之外,还有一个技术问题

         (3) Cache的写一致性问题:Cache的内容是主存的一部分,是主存的副本,内容应该与主存一致。通常有两种处理方案:

           Write Through :在写Cache的同时,也对主存的该内容进行写入。

           Write Back :        在CPU执行写操作时,只写Cache,不写入主存。

    第二轮电话面试惨不忍睹,好多东西都忘记了,主要集中在:

    2. java内存管理

    3. ArrayList,HashMap等数据结构类

    有时间好好补习一下。

猜你喜欢

转载自chuanwang66.iteye.com/blog/1754450